function automatic [31:0] gen_random_insn_mul;
input [31:0] i;
reg [31:0] r;
begin
        r=i%93;
        case(r)
    0: begin //DPADD_U.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000110000000000000000010011;
    end
    1: begin //DPADD_U.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000101000000000000000010011;
    end
    2: begin //DPADD_U.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000111000000000000000010011;
    end
    3: begin //MULV.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001110000000000000000010010;
    end
    4: begin //MULV.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001111000000000000000010010;
    end
    5: begin //MSUBR_Q.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001010000000000000000011011;
    end
    6: begin //MULV.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001101000000000000000010010;
    end
    7: begin //DPSUB_U.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001110000000000000000010011;
    end
    8: begin //DPADD_S.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000001000000000000000010011;
    end
    9: begin //DPADD_S.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000011000000000000000010011;
    end
    10: begin //DPADD_S.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000010000000000000000010011;
    end
    11: begin //DPSUB_U.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001111000000000000000010011;
    end
    12: begin //MADD_Q.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000101000000000000000011011;
    end
    13: begin //MULVI.B
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001100000000000000000000010;
    end
    14: begin //MULVI.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001111000000000000000000010;
    end
    15: begin //MULVI.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001101000000000000000000010;
    end
    16: begin //MULVI.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001110000000000000000000010;
    end
    17: begin //DPSUBI_S.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001001000000000000000000011;
    end
    18: begin //FMUL.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010000000000000000000011011;
    end
    19: begin //DPSUBI_U.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001110000000000000000000011;
    end
    20: begin //DPSUBI_S.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001011000000000000000000011;
    end
    21: begin //FMUL.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010001000000000000000011011;
    end
    22: begin //DPSUBI_U.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001101000000000000000000011;
    end
    23: begin //DPSUBI_U.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001111000000000000000000011;
    end
    24: begin //DPSUBI_S.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001010000000000000000000011;
    end
    25: begin //MSUB.PS
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000011111111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01001100000000000000000000101110;
    end
    26: begin //DPSUB_S.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001010000000000000000010011;
    end
    27: begin //DPSUB_S.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001001000000000000000010011;
    end
    28: begin //DPSUB_S.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001011000000000000000010011;
    end
    29: begin //MSUBR_Q.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001011000000000000000011011;
    end
    30: begin //MSUBVI.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010110000000000000000000010;
    end
    31: begin //MSUBVI.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010111000000000000000000010;
    end
    32: begin //MSUBVI.B
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010100000000000000000000010;
    end
    33: begin //MSUBVI.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010101000000000000000000010;
    end
    34: begin //MADDVI.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010010000000000000000000010;
    end
    35: begin //MULV.B
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001100000000000000000010010;
    end
    36: begin //DPSUB_U.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001101000000000000000010011;
    end
    37: begin //FMADD.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010110000000000000000011011;
    end
    38: begin //NMSUB.PS
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000011111111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01001100000000000000000000111110;
    end
    39: begin //FMADD.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010111000000000000000011011;
    end
    40: begin //MADDVI.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010011000000000000000000010;
    end
    41: begin //MUL.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01000110001000000000000000000010;
    end
    42: begin //MSUB.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000011111111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01001100000000000000000000101001;
    end
    43: begin //MUL.S
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01000110000000000000000000000010;
    end
    44: begin //MSUB.S
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000011111111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01001100000000000000000000101000;
    end
    45: begin //MADDR_Q.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000111000000000000000011011;
    end
    46: begin //MADDR_Q.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000110000000000000000011011;
    end
    47: begin //MADDVI.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010001000000000000000000010;
    end
    48: begin //MUL_Q.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000001000000000000000011011;
    end
    49: begin //MADDVI.B
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010000000000000000000000010;
    end
    50: begin //MUL_Q.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000000000000000000000011011;
    end
    51: begin //NMADD.S
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000011111111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01001100000000000000000000110000;
    end
    52: begin //NMADD.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000011111111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01001100000000000000000000110001;
    end
    53: begin //FMSUB.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111011000000000000000000011011;
    end
    54: begin //FMSUB.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111011001000000000000000011011;
    end
    55: begin //MADDV.B
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010000000000000000000010010;
    end
    56: begin //MADDV.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010011000000000000000010010;
    end
    57: begin //MADDV.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010001000000000000000010010;
    end
    58: begin //MADDV.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010010000000000000000010010;
    end
    59: begin //DOTP_S.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111011010000000000000000010010;
    end
    60: begin //DOTP_S.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111011011000000000000000010010;
    end
    61: begin //DOTP_S.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111011001000000000000000010010;
    end
    62: begin //DOTP_U.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111011111000000000000000010010;
    end
    63: begin //DOTP_U.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111011101000000000000000010010;
    end
    64: begin //DOTP_U.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111011110000000000000000010010;
    end
    65: begin //NMADD.PS
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000011111111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01001100000000000000000000110110;
    end
    66: begin //MADD_Q.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000100000000000000000011011;
    end
    67: begin //DPADDI_S.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000001000000000000000000011;
    end
    68: begin //DPADDI_U.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000110000000000000000000011;
    end
    69: begin //DPADDI_S.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000011000000000000000000011;
    end
    70: begin //DPADDI_U.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000111000000000000000000011;
    end
    71: begin //DPADDI_U.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000101000000000000000000011;
    end
    72: begin //DPADDI_S.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000010000000000000000000011;
    end
    73: begin //MADD.PS
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000011111111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01001100000000000000000000100110;
    end
    74: begin //NMSUB.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000011111111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01001100000000000000000000111001;
    end
    75: begin //MULR_Q.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000011000000000000000011011;
    end
    76: begin //NMSUB.S
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000011111111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01001100000000000000000000111000;
    end
    77: begin //MULR_Q.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111000010000000000000000011011;
    end
    78: begin //DOTPI_U.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111011110000000000000000000010;
    end
    79: begin //DOTPI_U.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111011101000000000000000000010;
    end
    80: begin //DOTPI_U.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111011111000000000000000000010;
    end
    81: begin //MSUB_Q.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001001000000000000000011011;
    end
    82: begin //DOTPI_S.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111011011000000000000000000010;
    end
    83: begin //DOTPI_S.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111011001000000000000000000010;
    end
    84: begin //DOTPI_S.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111011010000000000000000000010;
    end
    85: begin //MSUB_Q.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111001000000000000000000011011;
    end
    86: begin //MADD.S
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000011111111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01001100000000000000000000100000;
    end
    87: begin //MADD.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000011111111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01001100000000000000000000100001;
    end
    88: begin //MSUBV.H
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010101000000000000000010010;
    end
    89: begin //MUL.PS
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01000110110000000000000000000010;
    end
    90: begin //MSUBV.W
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010110000000000000000010010;
    end
    91: begin //MSUBV.D
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010111000000000000000010010;
    end
    92: begin //MSUBV.B
            gen_random_insn_mul=$random(seed);
            gen_random_insn_mul=gen_random_insn_mul & 32'b00000000000111111111111111000000;
            gen_random_insn_mul=gen_random_insn_mul | 32'b01111010100000000000000000010010;
    end
        default:
        gen_random_insn_mul=32'b0;
        endcase
end
endfunction

function automatic [31:0] gen_random_insn_add;
input [31:0] i;
reg [31:0] r;
begin
        r=i%224;
        case(r)
    0: begin //MINI_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000001000000000000000000010;
    end
    1: begin //MINI_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000000000000000000000000010;
    end
    2: begin //MINI_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011110000000000000000000001;
    end
    3: begin //MINI_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000011000000000000000000010;
    end
    4: begin //MINI_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011101000000000000000000001;
    end
    5: begin //MINI_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011111000000000000000000001;
    end
    6: begin //MINI_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000010000000000000000000010;
    end
    7: begin //MINI_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011100000000000000000000001;
    end
    8: begin //SUB.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01000110001000000000000000000001;
    end
    9: begin //ADDSI_A.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001011000000000000000000000;
    end
    10: begin //ADDSI_A.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001001000000000000000000000;
    end
    11: begin //FMAX_A.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011110000000000000000011011;
    end
    12: begin //FADD.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001101000000000000000011011;
    end
    13: begin //MIN_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000010000000000000000010010;
    end
    14: begin //MIN_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000001000000000000000010010;
    end
    15: begin //FADD.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001100000000000000000011011;
    end
    16: begin //FMAX_A.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011111000000000000000011011;
    end
    17: begin //MIN_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000000000000000000000010010;
    end
    18: begin //MIN_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000011000000000000000010010;
    end
    19: begin //ADDS_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010001000000000000000010000;
    end
    20: begin //ADDS_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010000000000000000000010000;
    end
    21: begin //ADDS_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010011000000000000000010000;
    end
    22: begin //ADDS_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010010000000000000000010000;
    end
    23: begin //ADD_A.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000111000000000000000010000;
    end
    24: begin //ADDVI.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000000000000000000000000000;
    end
    25: begin //ADDVI.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000011000000000000000000000;
    end
    26: begin //SUBV.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010100000000000000000010000;
    end
    27: begin //SUBV.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010111000000000000000010000;
    end
    28: begin //SUBV.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010101000000000000000010000;
    end
    29: begin //SUBV.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010110000000000000000010000;
    end
    30: begin //SUBSI_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000010000000000000000000001;
    end
    31: begin //SUBSI_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000000000000000000000000001;
    end
    32: begin //SUBSI_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000011000000000000000000001;
    end
    33: begin //ADD.PS
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01000110110000000000000000000000;
    end
    34: begin //ASUB_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011111000000000000000010000;
    end
    35: begin //ASUBI_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011100000000000000000000000;
    end
    36: begin //SUBSSI_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001010000000000000000000001;
    end
    37: begin //CLE_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011010000000000000000010100;
    end
    38: begin //SUBSSI_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001011000000000000000000001;
    end
    39: begin //CLE_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011001000000000000000010100;
    end
    40: begin //SUBSSI_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001000000000000000000000001;
    end
    41: begin //CLE_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011011000000000000000010100;
    end
    42: begin //SUBSSI_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001001000000000000000000001;
    end
    43: begin //CLE_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011000000000000000000010100;
    end
    44: begin //AVEI_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000100000000000000000000010;
    end
    45: begin //ASUB_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011110000000000000000010000;
    end
    46: begin //ADDS_A.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001011000000000000000010000;
    end
    47: begin //ADDS_A.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001000000000000000000010000;
    end
    48: begin //AVEI_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000111000000000000000000010;
    end
    49: begin //ADDS_A.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001001000000000000000010000;
    end
    50: begin //ADDS_A.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001010000000000000000010000;
    end
    51: begin //ADDS_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001111000000000000000010000;
    end
    52: begin //ADDS_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001100000000000000000010000;
    end
    53: begin //MINI_A.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011010000000000000000000001;
    end
    54: begin //ADDS_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001101000000000000000010000;
    end
    55: begin //ADDS_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001110000000000000000010000;
    end
    56: begin //MINI_A.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011001000000000000000000001;
    end
    57: begin //MINI_A.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011011000000000000000000001;
    end
    58: begin //MINI_A.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011000000000000000000000001;
    end
    59: begin //SUBSI_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000101000000000000000000001;
    end
    60: begin //SUBS_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000101000000000000000010001;
    end
    61: begin //SUBSI_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000111000000000000000000001;
    end
    62: begin //SUBS_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000111000000000000000010001;
    end
    63: begin //SUBS_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000100000000000000000010001;
    end
    64: begin //SUBSI_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000100000000000000000000001;
    end
    65: begin //SUBS_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000110000000000000000010001;
    end
    66: begin //SUBSI_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000110000000000000000000001;
    end
    67: begin //ADDI_A.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000110000000000000000000000;
    end
    68: begin //SUBS_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000010000000000000000010001;
    end
    69: begin //SUBS_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000001000000000000000010001;
    end
    70: begin //SUBS_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000000000000000000000010001;
    end
    71: begin //SUBS_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000011000000000000000010001;
    end
    72: begin //FCLE.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001000000000000000000011100;
    end
    73: begin //FCLE.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001001000000000000000011100;
    end
    74: begin //CLT_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010101000000000000000010100;
    end
    75: begin //AVEI_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001011000000000000000000010;
    end
    76: begin //AVEI_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001000000000000000000000010;
    end
    77: begin //CLT_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010100000000000000000010100;
    end
    78: begin //CLE_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000001000000000000000010101;
    end
    79: begin //CLT_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010111000000000000000010100;
    end
    80: begin //AVEI_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001001000000000000000000010;
    end
    81: begin //AVEI_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001010000000000000000000010;
    end
    82: begin //CLE_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000010000000000000000010101;
    end
    83: begin //CLT_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010110000000000000000010100;
    end
    84: begin //ADDSI_A.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001010000000000000000000000;
    end
    85: begin //CLT_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011110000000000000000010100;
    end
    86: begin //ADDSI_A.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001000000000000000000000000;
    end
    87: begin //CLT_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011101000000000000000010100;
    end
    88: begin //CLT_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011111000000000000000010100;
    end
    89: begin //CLT_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011100000000000000000010100;
    end
    90: begin //ADDSI_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010011000000000000000000000;
    end
    91: begin //ADDSI_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010000000000000000000000000;
    end
    92: begin //ADDSI_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010001000000000000000000000;
    end
    93: begin //ADDSI_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010010000000000000000000000;
    end
    94: begin //ASUB_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011100000000000000000010000;
    end
    95: begin //ASUB_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011010000000000000000010000;
    end
    96: begin //AVEI_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000110000000000000000000010;
    end
    97: begin //ADDSI_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001110000000000000000000000;
    end
    98: begin //ASUB_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011101000000000000000010000;
    end
    99: begin //ASUB_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011011000000000000000010000;
    end
    100: begin //ADDSI_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001100000000000000000000000;
    end
    101: begin //ADDSI_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001111000000000000000000000;
    end
    102: begin //ASUB_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011000000000000000000010000;
    end
    103: begin //ADDSI_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001101000000000000000000000;
    end
    104: begin //AVEI_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000101000000000000000000010;
    end
    105: begin //ASUB_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011001000000000000000010000;
    end
    106: begin //FMIN_A.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000011000000000000000011100;
    end
    107: begin //ADDI_A.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000101000000000000000000000;
    end
    108: begin //FMIN_A.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000010000000000000000011100;
    end
    109: begin //ADDV.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000011000000000000000010000;
    end
    110: begin //ADDV.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000000000000000000000010000;
    end
    111: begin //ADDV.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000001000000000000000010000;
    end
    112: begin //ADDV.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000010000000000000000010000;
    end
    113: begin //CLEI_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011000000000000000000000011;
    end
    114: begin //CLEI_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000010000000000000000000100;
    end
    115: begin //CLEI_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011011000000000000000000011;
    end
    116: begin //CLEI_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011001000000000000000000011;
    end
    117: begin //CLEI_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000011000000000000000000100;
    end
    118: begin //CLEI_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011010000000000000000000011;
    end
    119: begin //CLEI_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000000000000000000000000100;
    end
    120: begin //CLEI_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000001000000000000000000100;
    end
    121: begin //MAXI_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010000000000000000000000001;
    end
    122: begin //MAXI_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010110000000000000000000001;
    end
    123: begin //MAXI_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010011000000000000000000001;
    end
    124: begin //MAXI_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010001000000000000000000001;
    end
    125: begin //MAXI_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010111000000000000000000001;
    end
    126: begin //MAXI_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010010000000000000000000001;
    end
    127: begin //MAXI_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010100000000000000000000001;
    end
    128: begin //MAXI_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010101000000000000000000001;
    end
    129: begin //MAXI_A.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001100000000000000000000001;
    end
    130: begin //MAXI_A.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001111000000000000000000001;
    end
    131: begin //MAXI_A.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001101000000000000000000001;
    end
    132: begin //MAXI_A.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001110000000000000000000001;
    end
    133: begin //ADD_A.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000100000000000000000010000;
    end
    134: begin //ADD_A.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000101000000000000000010000;
    end
    135: begin //ADD_A.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000110000000000000000010000;
    end
    136: begin //ADDI_A.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000100000000000000000000000;
    end
    137: begin //ADDI_A.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000111000000000000000000000;
    end
    138: begin //FCEQU.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001100000000000000000011100;
    end
    139: begin //FMAX.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011100000000000000000011011;
    end
    140: begin //ADDVI.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000010000000000000000000000;
    end
    141: begin //FMAX.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011101000000000000000011011;
    end
    142: begin //FCEQU.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001101000000000000000011100;
    end
    143: begin //MIN_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011100000000000000000010001;
    end
    144: begin //CEQ.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010010000000000000000010100;
    end
    145: begin //FSUB.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001111000000000000000011011;
    end
    146: begin //CEQ.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010011000000000000000010100;
    end
    147: begin //CEQ.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010000000000000000000010100;
    end
    148: begin //MAX_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010011000000000000000010001;
    end
    149: begin //FSUB.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001110000000000000000011011;
    end
    150: begin //CEQ.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010001000000000000000010100;
    end
    151: begin //MIN_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011101000000000000000010001;
    end
    152: begin //SUBVI.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010111000000000000000000000;
    end
    153: begin //ADDVI.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000001000000000000000000000;
    end
    154: begin //SUBVI.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010100000000000000000000000;
    end
    155: begin //FCEQ.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000101000000000000000011100;
    end
    156: begin //SUBVI.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010101000000000000000000000;
    end
    157: begin //SUBVI.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010110000000000000000000000;
    end
    158: begin //FCEQ.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000100000000000000000011100;
    end
    159: begin //MAX_A.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001110000000000000000010001;
    end
    160: begin //FCUN.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001011000000000000000011100;
    end
    161: begin //MAX_A.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001101000000000000000010001;
    end
    162: begin //MAX_A.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001111000000000000000010001;
    end
    163: begin //MAX_A.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001100000000000000000010001;
    end
    164: begin //FCUN.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001010000000000000000011100;
    end
    165: begin //FCLT.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000110000000000000000011100;
    end
    166: begin //FCLT.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000111000000000000000011100;
    end
    167: begin //ADD.S
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01000110000000000000000000000000;
    end
    168: begin //FCLEU.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010001000000000000000011100;
    end
    169: begin //ADD.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01000110001000000000000000000000;
    end
    170: begin //FCLEU.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010000000000000000000011100;
    end
    171: begin //FMIN.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000001000000000000000011100;
    end
    172: begin //FMIN.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000000000000000000000011100;
    end
    173: begin //SUBSI_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000001000000000000000000001;
    end
    174: begin //CLTI_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011110000000000000000000011;
    end
    175: begin //CLTI_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011100000000000000000000011;
    end
    176: begin //CLTI_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010100000000000000000000011;
    end
    177: begin //CLTI_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011111000000000000000000011;
    end
    178: begin //CLTI_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011101000000000000000000011;
    end
    179: begin //MAX_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010100000000000000000010001;
    end
    180: begin //MAX_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010111000000000000000010001;
    end
    181: begin //MAX_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010101000000000000000010001;
    end
    182: begin //SUBSS_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001010000000000000000010001;
    end
    183: begin //SUBSS_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001001000000000000000010001;
    end
    184: begin //MAX_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010110000000000000000010001;
    end
    185: begin //SUBSS_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001000000000000000000010001;
    end
    186: begin //SUBSS_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001011000000000000000010001;
    end
    187: begin //CLE_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000000000000000000000010101;
    end
    188: begin //CLE_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000011000000000000000010101;
    end
    189: begin //ASUBI_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011010000000000000000000000;
    end
    190: begin //ASUBI_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011011000000000000000000000;
    end
    191: begin //ASUBI_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011000000000000000000000000;
    end
    192: begin //ASUBI_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011001000000000000000000000;
    end
    193: begin //MIN_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011110000000000000000010001;
    end
    194: begin //SUB.S
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01000110000000000000000000000001;
    end
    195: begin //MAX_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010010000000000000000010001;
    end
    196: begin //FCLTU.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001111000000000000000011100;
    end
    197: begin //MIN_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011111000000000000000010001;
    end
    198: begin //MAX_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010001000000000000000010001;
    end
    199: begin //SUB.PS
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01000110110000000000000000000001;
    end
    200: begin //FCLTU.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001110000000000000000011100;
    end
    201: begin //MAX_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010000000000000000000010001;
    end
    202: begin //CEQI.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010000000000000000000000011;
    end
    203: begin //MIN_A.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011010000000000000000010001;
    end
    204: begin //CEQI.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010011000000000000000000011;
    end
    205: begin //CEQI.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010001000000000000000000011;
    end
    206: begin //MIN_A.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011011000000000000000010001;
    end
    207: begin //CEQI.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010010000000000000000000011;
    end
    208: begin //MIN_A.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011000000000000000000010001;
    end
    209: begin //MIN_A.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011001000000000000000010001;
    end
    210: begin //CLTI_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010101000000000000000000011;
    end
    211: begin //AVE_S.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000101000000000000000010010;
    end
    212: begin //CLTI_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010111000000000000000000011;
    end
    213: begin //AVE_S.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000111000000000000000010010;
    end
    214: begin //ASUBI_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011110000000000000000000000;
    end
    215: begin //AVE_S.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000100000000000000000010010;
    end
    216: begin //ASUBI_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011101000000000000000000000;
    end
    217: begin //AVE_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111000110000000000000000010010;
    end
    218: begin //CLTI_S.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111010110000000000000000000011;
    end
    219: begin //ASUBI_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111011111000000000000000000000;
    end
    220: begin //AVE_U.W
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001010000000000000000010010;
    end
    221: begin //AVE_U.B
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001000000000000000000010010;
    end
    222: begin //AVE_U.D
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001011000000000000000010010;
    end
    223: begin //AVE_U.H
            gen_random_insn_add=$random(seed);
            gen_random_insn_add=gen_random_insn_add & 32'b00000000000111111111111111000000;
            gen_random_insn_add=gen_random_insn_add | 32'b01111001001000000000000000010010;
    end
        default:
        gen_random_insn_add=32'b0;
        endcase
end
endfunction

function automatic [31:0] gen_random_insn_elf;
input [31:0] i;
reg [31:0] r;
begin
        r=i%12;
        case(r)
    0: begin //SQRT.D
            gen_random_insn_elf=$random(seed);
            gen_random_insn_elf=gen_random_insn_elf & 32'b00000000000000001111111111000000;
            gen_random_insn_elf=gen_random_insn_elf | 32'b01000110001000000000000000000100;
    end
    1: begin //DIV.S
            gen_random_insn_elf=$random(seed);
            gen_random_insn_elf=gen_random_insn_elf & 32'b00000000000111111111111111000000;
            gen_random_insn_elf=gen_random_insn_elf | 32'b01000110000000000000000000000011;
    end
    2: begin //FDIV.D
            gen_random_insn_elf=$random(seed);
            gen_random_insn_elf=gen_random_insn_elf & 32'b00000000000111111111111111000000;
            gen_random_insn_elf=gen_random_insn_elf | 32'b01111010011000000000000000011011;
    end
    3: begin //FDIV.W
            gen_random_insn_elf=$random(seed);
            gen_random_insn_elf=gen_random_insn_elf & 32'b00000000000111111111111111000000;
            gen_random_insn_elf=gen_random_insn_elf | 32'b01111010010000000000000000011011;
    end
    4: begin //SQRT.S
            gen_random_insn_elf=$random(seed);
            gen_random_insn_elf=gen_random_insn_elf & 32'b00000000000000001111111111000000;
            gen_random_insn_elf=gen_random_insn_elf | 32'b01000110000000000000000000000100;
    end
    5: begin //RECIP.S
            gen_random_insn_elf=$random(seed);
            gen_random_insn_elf=gen_random_insn_elf & 32'b00000000000000001111111111000000;
            gen_random_insn_elf=gen_random_insn_elf | 32'b01000110000000000000000000010101;
    end
    6: begin //FSQRT.W
            gen_random_insn_elf=$random(seed);
            gen_random_insn_elf=gen_random_insn_elf & 32'b00000000000000001111111111000000;
            gen_random_insn_elf=gen_random_insn_elf | 32'b01111011110000000000000000001111;
    end
    7: begin //FSQRT.D
            gen_random_insn_elf=$random(seed);
            gen_random_insn_elf=gen_random_insn_elf & 32'b00000000000000001111111111000000;
            gen_random_insn_elf=gen_random_insn_elf | 32'b01111011110000010000000000001111;
    end
    8: begin //RSQRT.S
            gen_random_insn_elf=$random(seed);
            gen_random_insn_elf=gen_random_insn_elf & 32'b00000000000000001111111111000000;
            gen_random_insn_elf=gen_random_insn_elf | 32'b01000110000000000000000000010110;
    end
    9: begin //RSQRT.D
            gen_random_insn_elf=$random(seed);
            gen_random_insn_elf=gen_random_insn_elf & 32'b00000000000000001111111111000000;
            gen_random_insn_elf=gen_random_insn_elf | 32'b01000110001000000000000000010110;
    end
    10: begin //RECIP.D
            gen_random_insn_elf=$random(seed);
            gen_random_insn_elf=gen_random_insn_elf & 32'b00000000000000001111111111000000;
            gen_random_insn_elf=gen_random_insn_elf | 32'b01000110001000000000000000010101;
    end
    11: begin //DIV.D
            gen_random_insn_elf=$random(seed);
            gen_random_insn_elf=gen_random_insn_elf & 32'b00000000000111111111111111000000;
            gen_random_insn_elf=gen_random_insn_elf | 32'b01000110001000000000000000000011;
    end
        default:
        gen_random_insn_elf=32'b0;
        endcase
end
endfunction

function automatic [31:0] gen_random_insn_msc;
input [31:0] i;
reg [31:0] r;
begin
        r=i%244;
        case(r)
    0: begin //PCKEV.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001001000000000000000010101;
    end
    1: begin //BINSL.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110000000000000000010011;
    end
    2: begin //PCKEV.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001000000000000000000010101;
    end
    3: begin //BINSL.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011101000000000000000010011;
    end
    4: begin //BINSL.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011111000000000000000010011;
    end
    5: begin //BINSL.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100000000000000000010011;
    end
    6: begin //CVT.W.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110001000000000000000100100;
    end
    7: begin //VSHF.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000111000000000000000010101;
    end
    8: begin //VSHF.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000100000000000000000010101;
    end
    9: begin //SAT_U.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000110000000000000000011110;
    end
    10: begin //VSHF.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000101000000000000000010101;
    end
    11: begin //VSHF.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000110000000000000000010101;
    end
    12: begin //SAT_U.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000001111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000111100000000000000011110;
    end
    13: begin //SAT_U.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000001111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000100000000000000000011110;
    end
    14: begin //CVT.W.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000100100;
    end
    15: begin //SAT_U.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000011111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000111000000000000000011110;
    end
    16: begin //PCKEV.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001011000000000000000010101;
    end
    17: begin //PCNT.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100001100000000000001111;
    end
    18: begin //ROUND.W.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110001000000000000000001100;
    end
    19: begin //SRAI.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000011111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001111000000000000000011110;
    end
    20: begin //PCNT.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100001000000000000001111;
    end
    21: begin //PCNT.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100001110000000000001111;
    end
    22: begin //ROUND.W.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000001100;
    end
    23: begin //SRAI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000001111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001111100000000000000011110;
    end
    24: begin //XORI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000111111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011000000000000000000001010;
    end
    25: begin //CEIL.L.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110001000000000000000001010;
    end
    26: begin //FEXUPL.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110101010000000000001111;
    end
    27: begin //FEXUPL.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110101000000000000001111;
    end
    28: begin //PCKEV.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001010000000000000000010101;
    end
    29: begin //FFQR.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110100100000000000001111;
    end
    30: begin //S3IL2.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011000000000000000000000111;
    end
    31: begin //FFQL.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110100010000000000001111;
    end
    32: begin //FFQR.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110100110000000000001111;
    end
    33: begin //FFQL.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110100000000000000001111;
    end
    34: begin //S3IR1.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000110000000000000000000111;
    end
    35: begin //SAT_S.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000011111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000011000000000000000011110;
    end
    36: begin //FCLASS.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110001100000000000001111;
    end
    37: begin //SAT_S.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000001111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000011100000000000000011110;
    end
    38: begin //S3IR1.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000100000000000000000000111;
    end
    39: begin //FCLASS.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110001110000000000001111;
    end
    40: begin //S3IR1.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000101000000000000000000111;
    end
    41: begin //ROUND.L.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000001000;
    end
    42: begin //SRLI.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000001111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010000000000000000000011110;
    end
    43: begin //SRLI.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010010000000000000000011110;
    end
    44: begin //SE3L2.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011001000000000000000000101;
    end
    45: begin //BINSR.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000001000000000000000010100;
    end
    46: begin //BSET.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001011000000000000000010100;
    end
    47: begin //SE3L2.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011000000000000000000000101;
    end
    48: begin //BINSR.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000000000000000000000010100;
    end
    49: begin //BINSR.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000011000000000000000010100;
    end
    50: begin //BSET.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001001000000000000000010100;
    end
    51: begin //BINSR.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000010000000000000000010100;
    end
    52: begin //SE3L2.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011010000000000000000000101;
    end
    53: begin //BCLRI.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000001111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100000000000000000011110;
    end
    54: begin //BNEG.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001110000000000000000010100;
    end
    55: begin //FEXUPR.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110101100000000000001111;
    end
    56: begin //BNEGI.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000001111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000100000000000000000011111;
    end
    57: begin //BCLRI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000001111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011111100000000000000011110;
    end
    58: begin //TRUNC.W.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110001000000000000000001101;
    end
    59: begin //FEXUPR.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110101110000000000001111;
    end
    60: begin //TRUNC.W.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000001101;
    end
    61: begin //XOR.V
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000011000000000000000001111;
    end
    62: begin //PLU.PS
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110110000000000000000101101;
    end
    63: begin //SE3R0.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000000000000000000000000101;
    end
    64: begin //FLOOR.L.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000001011;
    end
    65: begin //SE3R0.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000010000000000000000000101;
    end
    66: begin //FLOOR.L.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110001000000000000000001011;
    end
    67: begin //BNEGI.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000110000000000000000011111;
    end
    68: begin //SE3L0.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010010000000000000000000101;
    end
    69: begin //SE3L0.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010001000000000000000000101;
    end
    70: begin //SRAI.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001110000000000000000011110;
    end
    71: begin //BMZI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000111111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001000000000000000000001011;
    end
    72: begin //SE3L0.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010000000000000000000000101;
    end
    73: begin //S3IL1.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010100000000000000000000111;
    end
    74: begin //S3IL1.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010101000000000000000000111;
    end
    75: begin //FRINT.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110000110000000000001111;
    end
    76: begin //PCNT.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100001010000000000001111;
    end
    77: begin //FRINT.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110000100000000000001111;
    end
    78: begin //SRA.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010101000000000000000010011;
    end
    79: begin //SRAI.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000001111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001100000000000000000011110;
    end
    80: begin //SE3R2.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001010000000000000000000101;
    end
    81: begin //MOVE.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000011111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000011000000000000000011010;
    end
    82: begin //MOVE.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000011110000000000000011010;
    end
    83: begin //MOVE.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000010000000000000000011010;
    end
    84: begin //SE3R2.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001000000000000000000000101;
    end
    85: begin //MOVE.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000001111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000011100000000000000011010;
    end
    86: begin //MOVE.V
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000011111100000000000011010;
    end
    87: begin //SE3R2.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001001000000000000000000101;
    end
    88: begin //S3IL0.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010000000000000000000000111;
    end
    89: begin //NLZC.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100011010000000000001111;
    end
    90: begin //BMNZ.V
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000100000000000000000001111;
    end
    91: begin //NLOC.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100010100000000000001111;
    end
    92: begin //NLOC.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100010000000000000001111;
    end
    93: begin //NLOC.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100010110000000000001111;
    end
    94: begin //NLOC.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100010010000000000001111;
    end
    95: begin //CEIL.L.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000001010;
    end
    96: begin //TRUNC.L.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000001001;
    end
    97: begin //SRL.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011010000000000000000010011;
    end
    98: begin //NLZC.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100011100000000000001111;
    end
    99: begin //TRUNC.L.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110001000000000000000001001;
    end
    100: begin //SRL.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011001000000000000000010011;
    end
    101: begin //NLZC.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100011000000000000001111;
    end
    102: begin //SRL.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011011000000000000000010011;
    end
    103: begin //SRL.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011000000000000000000010011;
    end
    104: begin //NLZC.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100011110000000000001111;
    end
    105: begin //FTQ.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010010000000000000000011100;
    end
    106: begin //CVT.PS.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000100110;
    end
    107: begin //BINSRI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000001111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011011100000000000000011110;
    end
    108: begin //ILVL.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010010000000000000000010101;
    end
    109: begin //ILVR.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010101000000000000000010101;
    end
    110: begin //BINSRI.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000001111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011000000000000000000011110;
    end
    111: begin //ILVR.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010100000000000000000010101;
    end
    112: begin //BINSRI.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000011111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011011000000000000000011110;
    end
    113: begin //ILVR.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010111000000000000000010101;
    end
    114: begin //ILVL.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010011000000000000000010101;
    end
    115: begin //BINSRI.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011010000000000000000011110;
    end
    116: begin //ILVL.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010000000000000000000010101;
    end
    117: begin //ILVR.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010110000000000000000010101;
    end
    118: begin //ILVL.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010001000000000000000010101;
    end
    119: begin //PCKOD.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001101000000000000000010101;
    end
    120: begin //PCKOD.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001111000000000000000010101;
    end
    121: begin //BSELI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000111111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010000000000000000000001011;
    end
    122: begin //PCKOD.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001110000000000000000010101;
    end
    123: begin //CEIL.W.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110001000000000000000001110;
    end
    124: begin //BMZ.V
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000101000000000000000001111;
    end
    125: begin //CEIL.W.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000001110;
    end
    126: begin //MOV.PS
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110110000000000000000000110;
    end
    127: begin //BCLRI.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110000000000000000011110;
    end
    128: begin //ROUND.L.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110001000000000000000001000;
    end
    129: begin //BCLRI.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000011111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011111000000000000000011110;
    end
    130: begin //S3IL1.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010110000000000000000000111;
    end
    131: begin //PUL.PS
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110110000000000000000101110;
    end
    132: begin //SAT_S.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000010000000000000000011110;
    end
    133: begin //FTQ.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010011000000000000000011100;
    end
    134: begin //MOV.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110001000000000000000000110;
    end
    135: begin //MOV.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000000110;
    end
    136: begin //SE3L1.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010100000000000000000000101;
    end
    137: begin //FTINT_S.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110010000000000000001111;
    end
    138: begin //SE3L1.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010110000000000000000000101;
    end
    139: begin //ORI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000111111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001000000000000000000001010;
    end
    140: begin //FTINT_S.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110010010000000000001111;
    end
    141: begin //PUU.PS
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110110000000000000000101111;
    end
    142: begin //SHF.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000111111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001000000000000000000001100;
    end
    143: begin //BSEL.V
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000110000000000000000001111;
    end
    144: begin //SHF.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000111111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011000000000000000000001011;
    end
    145: begin //SHF.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000111111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000000000000000000000001100;
    end
    146: begin //SAT_S.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000001111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000000000000000000000011110;
    end
    147: begin //CVT.L.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110001000000000000000100101;
    end
    148: begin //CVT.L.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000100101;
    end
    149: begin //PLL.PS
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110110000000000000000101100;
    end
    150: begin //NOR.V
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000010000000000000000001111;
    end
    151: begin //FFINT_S.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110010100000000000001111;
    end
    152: begin //FTINT_U.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110011010000000000001111;
    end
    153: begin //S3IR2.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001000000000000000000000111;
    end
    154: begin //FEXDO.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010100000000000000000011100;
    end
    155: begin //S3IR2.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001001000000000000000000111;
    end
    156: begin //FTINT_U.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110011000000000000001111;
    end
    157: begin //FEXDO.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010101000000000000000011100;
    end
    158: begin //ILVOD.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110000000000000000010101;
    end
    159: begin //ILVOD.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011100000000000000000010101;
    end
    160: begin //ILVOD.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011111000000000000000010101;
    end
    161: begin //ILVOD.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011101000000000000000010101;
    end
    162: begin //LDI.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001010000000000000000001110;
    end
    163: begin //ANDI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000111111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000000000000000000000001010;
    end
    164: begin //LDI.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001001000000000000000001110;
    end
    165: begin //LDI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001000000000000000000001110;
    end
    166: begin //LDI.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001011000000000000000001110;
    end
    167: begin //S3IR0.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000010000000000000000000111;
    end
    168: begin //FFINT_S.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110010110000000000001111;
    end
    169: begin //BSET.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001000000000000000000010100;
    end
    170: begin //SRLI.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000011111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010011000000000000000011110;
    end
    171: begin //S3IR0.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000000000000000000000000111;
    end
    172: begin //S3IR0.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000001000000000000000000111;
    end
    173: begin //SRLI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000001111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010011100000000000000011110;
    end
    174: begin //CVT.S.L
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110101000000000000000100000;
    end
    175: begin //BNEGI.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000011111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000111000000000000000011111;
    end
    176: begin //BNEGI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000001111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000111100000000000000011111;
    end
    177: begin //ABS.PS
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110110000000000000000000101;
    end
    178: begin //BNEG.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001101000000000000000010100;
    end
    179: begin //NEG.PS
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110110000000000000000000111;
    end
    180: begin //BNEG.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001111000000000000000010100;
    end
    181: begin //BNEG.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001100000000000000000010100;
    end
    182: begin //S3IR2.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001010000000000000000000111;
    end
    183: begin //OR.V
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000001000000000000000001111;
    end
    184: begin //CVT.S.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110001000000000000000100000;
    end
    185: begin //SE3R0.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000001000000000000000000101;
    end
    186: begin //SHLI.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001010000000000000000011110;
    end
    187: begin //CVT.D.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000100001;
    end
    188: begin //CVT.D.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110100000000000000000100001;
    end
    189: begin //SHLI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000001111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001011100000000000000011110;
    end
    190: begin //SHLI.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000001111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001000000000000000000011110;
    end
    191: begin //CVT.D.L
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110101000000000000000100001;
    end
    192: begin //SHLI.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000011111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001011000000000000000011110;
    end
    193: begin //SE3R1.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000100000000000000000000101;
    end
    194: begin //BMNZI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000111111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000000000000000000000001011;
    end
    195: begin //BINSLI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000001111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010111100000000000000011110;
    end
    196: begin //BINSLI.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000001111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010100000000000000000011110;
    end
    197: begin //BINSLI.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000011111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010111000000000000000011110;
    end
    198: begin //BINSLI.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010110000000000000000011110;
    end
    199: begin //SE3R1.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000101000000000000000000101;
    end
    200: begin //SHL.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010010000000000000000010011;
    end
    201: begin //SHL.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010001000000000000000010011;
    end
    202: begin //SHL.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010011000000000000000010011;
    end
    203: begin //FLOOR.W.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110001000000000000000001111;
    end
    204: begin //SHL.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010000000000000000000010011;
    end
    205: begin //CVT.S.PL
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110110000000000000000101000;
    end
    206: begin //S3IL2.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011010000000000000000000111;
    end
    207: begin //S3IL2.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011001000000000000000000111;
    end
    208: begin //FLOOR.W.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000001111;
    end
    209: begin //CVT.S.PU
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110110000000000000000100000;
    end
    210: begin //SE3R1.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000110000000000000000000101;
    end
    211: begin //BCLR.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000110000000000000000010100;
    end
    212: begin //BCLR.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000101000000000000000010100;
    end
    213: begin //BCLR.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000100000000000000000010100;
    end
    214: begin //BCLR.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000111000000000000000010100;
    end
    215: begin //FFINT_U.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110011110000000000001111;
    end
    216: begin //BSETI.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000010000000000000000011111;
    end
    217: begin //ILVEV.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011010000000000000000010101;
    end
    218: begin //BSET.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001010000000000000000010100;
    end
    219: begin //BSETI.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000001111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000000000000000000000011111;
    end
    220: begin //FFINT_U.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110011100000000000001111;
    end
    221: begin //BSETI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000001111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000011100000000000000011111;
    end
    222: begin //ILVEV.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011001000000000000000010101;
    end
    223: begin //ILVEV.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011011000000000000000010101;
    end
    224: begin //ILVEV.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011000000000000000000010101;
    end
    225: begin //BSETI.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000011111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000011000000000000000011111;
    end
    226: begin //FLOG2.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110001010000000000001111;
    end
    227: begin //FLOG2.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011110001000000000000001111;
    end
    228: begin //S3IL0.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010001000000000000000000111;
    end
    229: begin //SRA.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010111000000000000000010011;
    end
    230: begin //SRA.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010100000000000000000010011;
    end
    231: begin //SRA.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010110000000000000000010011;
    end
    232: begin //S3IL0.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010010000000000000000000111;
    end
    233: begin //ABS.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110001000000000000000000101;
    end
    234: begin //NORI.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000111111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010000000000000000000001010;
    end
    235: begin //NEG.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000000111;
    end
    236: begin //NEG.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110001000000000000000000111;
    end
    237: begin //FEXP2.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011010000000000000000011011;
    end
    238: begin //PCKOD.B
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111001100000000000000000010101;
    end
    239: begin //CVT.S.W
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110100000000000000000100000;
    end
    240: begin //FEXP2.D
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111011011000000000000000011011;
    end
    241: begin //AND.V
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111000000000000000000000001111;
    end
    242: begin //ABS.S
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000000001111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01000110000000000000000000000101;
    end
    243: begin //SE3L1.H
            gen_random_insn_msc=$random(seed);
            gen_random_insn_msc=gen_random_insn_msc & 32'b00000000000111111111111111000000;
            gen_random_insn_msc=gen_random_insn_msc | 32'b01111010101000000000000000000101;
    end
        default:
        gen_random_insn_msc=32'b0;
        endcase
end
endfunction

function automatic [31:0] gen_random_insn_xcg;
input [31:0] i;
reg [31:0] r;
begin
        r=i%87;
        case(r)
    0: begin //MVTG_S.H
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000011111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000101000000000000000011010;
    end
    1: begin //SUXC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000011111111111111100000000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01001100000000000000000000001101;
    end
    2: begin //SWC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000011111111111111111111111111;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b11100100000000000000000000000000;
    end
    3: begin //SLDR.B
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001100000000000000000010110;
    end
    4: begin //MOVF.PS
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111001111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110110000000000000000010001;
    end
    5: begin //LWC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000011111111111111111111111111;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b11000100000000000000000000000000;
    end
    6: begin //CFC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111100000000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000100010000000000000000000000;
    end
    7: begin //C.cond.D
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111100001111;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110001000000000000000110000;
    end
    8: begin //MFHC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111100000000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000100011000000000000000000000;
    end
    9: begin //ALNV.PS
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000011111111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01001100000000000000000000011110;
    end
    10: begin //LUXC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000011111111110000011111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01001100000000000000000000000101;
    end
    11: begin //CFCMSA
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000000001111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000111111100000000000011010;
    end
    12: begin //SLDR.D
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001111000000000000000010110;
    end
    13: begin //MVTGR_U.H
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001001000000000000000010110;
    end
    14: begin //ST.V
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001101000000000000000001111;
    end
    15: begin //MVTG_S.B
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000100000000000000000011010;
    end
    16: begin //SLD.D
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000000111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000001110000000000000011010;
    end
    17: begin //MOVT.PS
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111001111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110110000010000000000010001;
    end
    18: begin //SWXC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000011111111111111100000000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01001100000000000000000000001000;
    end
    19: begin //MVTG_S.W
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000001111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000101100000000000000011010;
    end
    20: begin //LWXC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000011111111110000011111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01001100000000000000000000000000;
    end
    21: begin //LDX.V
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001100000000000000000001111;
    end
    22: begin //MVTGR_S.B
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000100000000000000000010110;
    end
    23: begin //MVFGE.W
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000001111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001001100000000000000011010;
    end
    24: begin //MVTGR_U.W
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001010000000000000000010110;
    end
    25: begin //SLDR.H
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001101000000000000000010110;
    end
    26: begin //BC1FL
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111001111111111111111;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000101000000100000000000000000;
    end
    27: begin //BC1TL
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111001111111111111111;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000101000000110000000000000000;
    end
    28: begin //CTCMSA
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000000001111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000101111100000000000011010;
    end
    29: begin //MVTGR_S.W
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000110000000000000000010110;
    end
    30: begin //SDXC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000011111111111111100000000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01001100000000000000000000001001;
    end
    31: begin //MVTG_U.B
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000110000000000000000011010;
    end
    32: begin //MVTG_U.H
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000011111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000111000000000000000011010;
    end
    33: begin //MVTG_U.W
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000001111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000111100000000000000011010;
    end
    34: begin //MOVN.PS
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110110000000000000000010011;
    end
    35: begin //MOVZ.D
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110001000000000000000010010;
    end
    36: begin //BC1T
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111001111111111111111;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000101000000010000000000000000;
    end
    37: begin //BC1F
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111001111111111111111;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000101000000000000000000000000;
    end
    38: begin //MTHC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111100000000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000100111000000000000000000000;
    end
    39: begin //LDC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000011111111111111111111111111;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b11010100000000000000000000000000;
    end
    40: begin //SLDR.W
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001110000000000000000010110;
    end
    41: begin //BNZ.D
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000011000000000000000001110;
    end
    42: begin //MTC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111100000000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000100100000000000000000000000;
    end
    43: begin //MVTGR_S.H
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000101000000000000000010110;
    end
    44: begin //SLD.W
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000001111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000001100000000000000011010;
    end
    45: begin //CTC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111100000000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000100110000000000000000000000;
    end
    46: begin //STX.V
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001110000000000000000001111;
    end
    47: begin //MOVER.W
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000010000000000000000010110;
    end
    48: begin //MOVER.H
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000001000000000000000010110;
    end
    49: begin //MOVER.D
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000011000000000000000010110;
    end
    50: begin //MOVER.B
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000000000000000000000010110;
    end
    51: begin //MOVZ.S
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110000000000000000000010010;
    end
    52: begin //MOVN.D
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110001000000000000000010011;
    end
    53: begin //MOVN.S
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110000000000000000000010011;
    end
    54: begin //MVFGE.H
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000011111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001001000000000000000011010;
    end
    55: begin //LD.V
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001011000000000000000001111;
    end
    56: begin //MVFGE.B
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001000000000000000000011010;
    end
    57: begin //MOVF.S
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111001111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110000000000000000000010001;
    end
    58: begin //MFC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111100000000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000100000000000000000000000000;
    end
    59: begin //MOVF.D
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111001111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110001000000000000000010001;
    end
    60: begin //MVFGER.W
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111010010000000000000000010110;
    end
    61: begin //MVFGER.H
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111010001000000000000000010110;
    end
    62: begin //MVFGER.B
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111010000000000000000000010110;
    end
    63: begin //MVFG.W
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000000001111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111011100000100000000000001111;
    end
    64: begin //MOVF
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000011111111001111100000000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b00000000000000000000000000000001;
    end
    65: begin //C.cond.S
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111100001111;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110000000000000000000110000;
    end
    66: begin //MVFG.B
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000000001111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111011100000000000000000001111;
    end
    67: begin //MOVT
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000011111111001111100000000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b00000000000000010000000000000001;
    end
    68: begin //MVFG.H
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000000001111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111011100000010000000000001111;
    end
    69: begin //LDXC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000011111111110000011111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01001100000000000000000000000001;
    end
    70: begin //BNZ.V
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000111000000000000000001111;
    end
    71: begin //BNZ.H
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000001000000000000000001110;
    end
    72: begin //BNZ.W
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000010000000000000000001110;
    end
    73: begin //BNZ.B
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000000000000000000000001110;
    end
    74: begin //MOVT.S
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111001111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110000000010000000000010001;
    end
    75: begin //MOVT.D
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111001111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110001000010000000000010001;
    end
    76: begin //BZ.H
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000101000000000000000001110;
    end
    77: begin //BZ.B
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000100000000000000000001110;
    end
    78: begin //BZ.D
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000111000000000000000001110;
    end
    79: begin //BZ.V
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001000000000000000000001111;
    end
    80: begin //BZ.W
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000110000000000000000001110;
    end
    81: begin //SDC1
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000011111111111111111111111111;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b11110100000000000000000000000000;
    end
    82: begin //C.cond.PS
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111100001111;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110110000000000000000110000;
    end
    83: begin //MOVZ.PS
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01000110110000000000000000010010;
    end
    84: begin //SLD.H
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000011111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000001000000000000000011010;
    end
    85: begin //SLD.B
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111000000000000000000000011010;
    end
    86: begin //MVTGR_U.B
            gen_random_insn_xcg=$random(seed);
            gen_random_insn_xcg=gen_random_insn_xcg & 32'b00000000000111111111111111000000;
            gen_random_insn_xcg=gen_random_insn_xcg | 32'b01111001000000000000000000010110;
    end
        default:
        gen_random_insn_xcg=32'b0;
        endcase
end
endfunction

function automatic [31:0] gen_random_insn_fxu;
input [31:0] i;
reg [31:0] r;
begin
        r=i%660;
        case(r)
    0: begin //MINI_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000000010;
    end
    1: begin //PCKEV.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000010101;
    end
    2: begin //BINSL.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000000000000000010011;
    end
    3: begin //MINI_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000000010;
    end
    4: begin //MINI_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000000000000000000001;
    end
    5: begin //PCKEV.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000010101;
    end
    6: begin //MVTG_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000011010;
    end
    7: begin //MINI_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000000010;
    end
    8: begin //MINI_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011101000000000000000000001;
    end
    9: begin //BINSL.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011101000000000000000010011;
    end
    10: begin //MINI_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011111000000000000000000001;
    end
    11: begin //BINSL.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011111000000000000000010011;
    end
    12: begin //MINI_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000000010;
    end
    13: begin //BINSL.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100000000000000000010011;
    end
    14: begin //MINI_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100000000000000000000001;
    end
    15: begin //CVT.W.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000100100;
    end
    16: begin //VSHF.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000010101;
    end
    17: begin //VSHF.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000010101;
    end
    18: begin //SAT_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000011110;
    end
    19: begin //DPADD_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000010011;
    end
    20: begin //VSHF.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000010101;
    end
    21: begin //VSHF.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000010101;
    end
    22: begin //SUXC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111100000000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000001101;
    end
    23: begin //DPADD_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000010011;
    end
    24: begin //SAT_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111100000000000000011110;
    end
    25: begin //SAT_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000001111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000011110;
    end
    26: begin //CVT.W.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000100100;
    end
    27: begin //SUB.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000000001;
    end
    28: begin //SAT_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000011110;
    end
    29: begin //PCKEV.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000010101;
    end
    30: begin //DPADD_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000010011;
    end
    31: begin //ADDSI_A.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000000000;
    end
    32: begin //PCNT.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100001100000000000001111;
    end
    33: begin //ROUND.W.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000001100;
    end
    34: begin //SRAI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111000000000000000011110;
    end
    35: begin //PCNT.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100001000000000000001111;
    end
    36: begin //PCNT.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100001110000000000001111;
    end
    37: begin //ROUND.W.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000001100;
    end
    38: begin //SRAI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111100000000000000011110;
    end
    39: begin //ADDSI_A.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000000000;
    end
    40: begin //MULV.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000010010;
    end
    41: begin //FMAX_A.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000000000000000011011;
    end
    42: begin //FADD.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001101000000000000000011011;
    end
    43: begin //XORI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011000000000000000000001010;
    end
    44: begin //CEIL.L.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000001010;
    end
    45: begin //MIN_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000010010;
    end
    46: begin //MULV.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111000000000000000010010;
    end
    47: begin //MIN_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000010010;
    end
    48: begin //SQRT.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000000100;
    end
    49: begin //FADD.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001100000000000000000011011;
    end
    50: begin //FMAX_A.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011111000000000000000011011;
    end
    51: begin //MSUBR_Q.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000011011;
    end
    52: begin //MIN_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000010010;
    end
    53: begin //MULV.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001101000000000000000010010;
    end
    54: begin //MIN_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000010010;
    end
    55: begin //FEXUPL.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110101010000000000001111;
    end
    56: begin //ADDS_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000010000;
    end
    57: begin //ADDS_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000010000;
    end
    58: begin //DPSUB_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000010011;
    end
    59: begin //ADDS_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010011000000000000000010000;
    end
    60: begin //FEXUPL.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110101000000000000001111;
    end
    61: begin //PCKEV.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000010101;
    end
    62: begin //ADDS_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000010000;
    end
    63: begin //SWC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111111111;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b11100100000000000000000000000000;
    end
    64: begin //FFQR.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110100100000000000001111;
    end
    65: begin //SLDR.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001100000000000000000010110;
    end
    66: begin //S3IL2.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011000000000000000000000111;
    end
    67: begin //FFQL.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110100010000000000001111;
    end
    68: begin //FFQR.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110100110000000000001111;
    end
    69: begin //FFQL.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110100000000000000001111;
    end
    70: begin //MOVF.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000010001;
    end
    71: begin //ADD_A.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000010000;
    end
    72: begin //DPADD_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000010011;
    end
    73: begin //S3IR1.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000000111;
    end
    74: begin //SAT_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000011110;
    end
    75: begin //DPADD_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000010011;
    end
    76: begin //FCLASS.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110001100000000000001111;
    end
    77: begin //SAT_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011100000000000000011110;
    end
    78: begin //ADDVI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000000000;
    end
    79: begin //S3IR1.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000000111;
    end
    80: begin //ADDVI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000000000;
    end
    81: begin //FCLASS.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110001110000000000001111;
    end
    82: begin //S3IR1.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000000111;
    end
    83: begin //DPADD_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000010011;
    end
    84: begin //SUBV.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010100000000000000000010000;
    end
    85: begin //LWC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111111111;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b11000100000000000000000000000000;
    end
    86: begin //SUBV.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010111000000000000000010000;
    end
    87: begin //ROUND.L.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000001000;
    end
    88: begin //DPSUB_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111000000000000000010011;
    end
    89: begin //SUBV.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010101000000000000000010000;
    end
    90: begin //SRLI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000001111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000011110;
    end
    91: begin //SUBV.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010110000000000000000010000;
    end
    92: begin //CFC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111100000000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000100010000000000000000000000;
    end
    93: begin //SRLI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000011110;
    end
    94: begin //SE3L2.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011001000000000000000000101;
    end
    95: begin //BINSR.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000010100;
    end
    96: begin //BSET.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000010100;
    end
    97: begin //SUBSI_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000000001;
    end
    98: begin //SE3L2.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011000000000000000000000101;
    end
    99: begin //BINSR.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000010100;
    end
    100: begin //BINSR.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000010100;
    end
    101: begin //BSET.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000010100;
    end
    102: begin //SUBSI_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000000001;
    end
    103: begin //C.cond.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111100001111;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000110000;
    end
    104: begin //SUBSI_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000000001;
    end
    105: begin //MADD_Q.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000011011;
    end
    106: begin //BINSR.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000010100;
    end
    107: begin //SE3L2.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011010000000000000000000101;
    end
    108: begin //BCLRI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000001111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100000000000000000011110;
    end
    109: begin //MFHC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111100000000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000100011000000000000000000000;
    end
    110: begin //ALNV.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000011110;
    end
    111: begin //ADD.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000000000;
    end
    112: begin //MULVI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001100000000000000000000010;
    end
    113: begin //BNEG.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000010100;
    end
    114: begin //MULVI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111000000000000000000010;
    end
    115: begin //FEXUPR.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110101100000000000001111;
    end
    116: begin //MULVI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001101000000000000000000010;
    end
    117: begin //BNEGI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000001111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000011111;
    end
    118: begin //BCLRI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011111100000000000000011110;
    end
    119: begin //TRUNC.W.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000001101;
    end
    120: begin //LUXC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111110000011111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000000101;
    end
    121: begin //CFCMSA
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111111100000000000011010;
    end
    122: begin //FEXUPR.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110101110000000000001111;
    end
    123: begin //MULVI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000000010;
    end
    124: begin //SLDR.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111000000000000000010110;
    end
    125: begin //TRUNC.W.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000001101;
    end
    126: begin //MVTGR_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000010110;
    end
    127: begin //DPSUBI_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000000011;
    end
    128: begin //XOR.V
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000001111;
    end
    129: begin //FMUL.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000011011;
    end
    130: begin //DPSUBI_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000000011;
    end
    131: begin //ST.V
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001101000000000000000001111;
    end
    132: begin //ASUB_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011111000000000000000010000;
    end
    133: begin //DPSUBI_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000000011;
    end
    134: begin //ASUBI_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100000000000000000000000;
    end
    135: begin //PLU.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000101101;
    end
    136: begin //FMUL.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000011011;
    end
    137: begin //DPSUBI_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001101000000000000000000011;
    end
    138: begin //DPSUBI_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111000000000000000000011;
    end
    139: begin //DPSUBI_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000000011;
    end
    140: begin //SUBSSI_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000000001;
    end
    141: begin //SE3R0.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000000101;
    end
    142: begin //MVTG_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000011010;
    end
    143: begin //SLD.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001110000000000000011010;
    end
    144: begin //CLE_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011010000000000000000010100;
    end
    145: begin //FLOOR.L.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000001011;
    end
    146: begin //SUBSSI_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000000001;
    end
    147: begin //SE3R0.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000000101;
    end
    148: begin //CLE_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011001000000000000000010100;
    end
    149: begin //SUBSSI_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000000001;
    end
    150: begin //CLE_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011011000000000000000010100;
    end
    151: begin //FLOOR.L.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000001011;
    end
    152: begin //SUBSSI_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000000001;
    end
    153: begin //CLE_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011000000000000000000010100;
    end
    154: begin //MOVT.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000010000000000010001;
    end
    155: begin //AVEI_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000000010;
    end
    156: begin //SWXC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111100000000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000001000;
    end
    157: begin //MVTG_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101100000000000000011010;
    end
    158: begin //LWXC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111110000011111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000000000;
    end
    159: begin //ASUB_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000000000000000010000;
    end
    160: begin //BNEGI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000011111;
    end
    161: begin //LDX.V
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001100000000000000000001111;
    end
    162: begin //ADDS_A.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000010000;
    end
    163: begin //ADDS_A.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000010000;
    end
    164: begin //AVEI_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000000010;
    end
    165: begin //SE3L0.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000000101;
    end
    166: begin //ADDS_A.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000010000;
    end
    167: begin //ADDS_A.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000010000;
    end
    168: begin //SE3L0.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000000101;
    end
    169: begin //SRAI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000011110;
    end
    170: begin //BMZI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000001011;
    end
    171: begin //DIV.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000000011;
    end
    172: begin //SE3L0.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000000101;
    end
    173: begin //MVTGR_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000010110;
    end
    174: begin //ADDS_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111000000000000000010000;
    end
    175: begin //ADDS_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001100000000000000000010000;
    end
    176: begin //MINI_A.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011010000000000000000000001;
    end
    177: begin //MSUB.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000101110;
    end
    178: begin //ADDS_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001101000000000000000010000;
    end
    179: begin //ADDS_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000010000;
    end
    180: begin //S3IL1.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010100000000000000000000111;
    end
    181: begin //MINI_A.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011001000000000000000000001;
    end
    182: begin //MINI_A.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011011000000000000000000001;
    end
    183: begin //MINI_A.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011000000000000000000000001;
    end
    184: begin //S3IL1.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010101000000000000000000111;
    end
    185: begin //MVFGE.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001100000000000000011010;
    end
    186: begin //SUBSI_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000000001;
    end
    187: begin //SUBS_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000010001;
    end
    188: begin //SUBSI_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000000001;
    end
    189: begin //SUBS_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000010001;
    end
    190: begin //SUBS_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000010001;
    end
    191: begin //FRINT.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000110000000000001111;
    end
    192: begin //SUBSI_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000000001;
    end
    193: begin //MVTGR_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000010110;
    end
    194: begin //PCNT.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100001010000000000001111;
    end
    195: begin //SUBS_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000010001;
    end
    196: begin //SUBSI_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000000001;
    end
    197: begin //ADDI_A.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000000000;
    end
    198: begin //FRINT.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000100000000000001111;
    end
    199: begin //SRA.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010101000000000000000010011;
    end
    200: begin //DPSUB_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000010011;
    end
    201: begin //SUBS_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000010001;
    end
    202: begin //SRAI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000001111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001100000000000000000011110;
    end
    203: begin //SUBS_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000010001;
    end
    204: begin //DPSUB_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000010011;
    end
    205: begin //SUBS_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000010001;
    end
    206: begin //SUBS_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000010001;
    end
    207: begin //DPSUB_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000010011;
    end
    208: begin //SE3R2.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000000101;
    end
    209: begin //FCLE.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000011100;
    end
    210: begin //MOVE.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000011010;
    end
    211: begin //MOVE.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011110000000000000011010;
    end
    212: begin //MOVE.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000011010;
    end
    213: begin //FCLE.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000011100;
    end
    214: begin //SE3R2.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000000101;
    end
    215: begin //MOVE.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011100000000000000011010;
    end
    216: begin //MOVE.V
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011111100000000000011010;
    end
    217: begin //SE3R2.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000000101;
    end
    218: begin //MSUBR_Q.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000011011;
    end
    219: begin //SLDR.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001101000000000000000010110;
    end
    220: begin //S3IL0.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000000111;
    end
    221: begin //NLZC.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100011010000000000001111;
    end
    222: begin //BC1FL
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111001111111111111111;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000101000000100000000000000000;
    end
    223: begin //CLT_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010101000000000000000010100;
    end
    224: begin //AVEI_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000000010;
    end
    225: begin //MSUBVI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010110000000000000000000010;
    end
    226: begin //AVEI_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000000010;
    end
    227: begin //CLT_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010100000000000000000010100;
    end
    228: begin //CLE_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000010101;
    end
    229: begin //CLT_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010111000000000000000010100;
    end
    230: begin //AVEI_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000000010;
    end
    231: begin //MSUBVI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010111000000000000000000010;
    end
    232: begin //BMNZ.V
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000001111;
    end
    233: begin //AVEI_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000000010;
    end
    234: begin //CLE_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000010101;
    end
    235: begin //MSUBVI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010100000000000000000000010;
    end
    236: begin //MSUBVI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010101000000000000000000010;
    end
    237: begin //CLT_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010110000000000000000010100;
    end
    238: begin //ADDSI_A.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000000000;
    end
    239: begin //CLT_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000000000000000010100;
    end
    240: begin //ADDSI_A.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000000000;
    end
    241: begin //MADDVI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000000010;
    end
    242: begin //CLT_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011101000000000000000010100;
    end
    243: begin //CLT_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011111000000000000000010100;
    end
    244: begin //CLT_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100000000000000000010100;
    end
    245: begin //ADDSI_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010011000000000000000000000;
    end
    246: begin //BC1TL
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111001111111111111111;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000101000000110000000000000000;
    end
    247: begin //ADDSI_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000000000;
    end
    248: begin //MULV.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001100000000000000000010010;
    end
    249: begin //NLOC.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100010100000000000001111;
    end
    250: begin //ADDSI_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000000000;
    end
    251: begin //CTCMSA
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101111100000000000011010;
    end
    252: begin //ADDSI_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000000000;
    end
    253: begin //NLOC.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100010000000000000001111;
    end
    254: begin //NLOC.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100010110000000000001111;
    end
    255: begin //MVTGR_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000010110;
    end
    256: begin //NLOC.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100010010000000000001111;
    end
    257: begin //DPSUB_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001101000000000000000010011;
    end
    258: begin //SDXC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111100000000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000001001;
    end
    259: begin //ASUB_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100000000000000000010000;
    end
    260: begin //ASUB_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011010000000000000000010000;
    end
    261: begin //AVEI_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000000010;
    end
    262: begin //MVTG_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000011010;
    end
    263: begin //ADDSI_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000000000;
    end
    264: begin //CEIL.L.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000001010;
    end
    265: begin //ASUB_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011101000000000000000010000;
    end
    266: begin //MVTG_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000011010;
    end
    267: begin //ASUB_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011011000000000000000010000;
    end
    268: begin //ADDSI_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001100000000000000000000000;
    end
    269: begin //MVTG_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111100000000000000011010;
    end
    270: begin //ADDSI_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111000000000000000000000;
    end
    271: begin //MOVN.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000010011;
    end
    272: begin //ASUB_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011000000000000000000010000;
    end
    273: begin //ADDSI_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001101000000000000000000000;
    end
    274: begin //AVEI_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000000010;
    end
    275: begin //ASUB_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011001000000000000000010000;
    end
    276: begin //MOVZ.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000010010;
    end
    277: begin //TRUNC.L.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000001001;
    end
    278: begin //SRL.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011010000000000000000010011;
    end
    279: begin //NLZC.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100011100000000000001111;
    end
    280: begin //TRUNC.L.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000001001;
    end
    281: begin //SRL.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011001000000000000000010011;
    end
    282: begin //NLZC.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100011000000000000001111;
    end
    283: begin //SRL.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011011000000000000000010011;
    end
    284: begin //SRL.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011000000000000000000010011;
    end
    285: begin //NLZC.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100011110000000000001111;
    end
    286: begin //FMIN_A.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000011100;
    end
    287: begin //ADDI_A.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000000000;
    end
    288: begin //FMIN_A.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000011100;
    end
    289: begin //ADDV.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000010000;
    end
    290: begin //FMADD.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010110000000000000000011011;
    end
    291: begin //ADDV.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000010000;
    end
    292: begin //NMSUB.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000111110;
    end
    293: begin //ADDV.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000010000;
    end
    294: begin //ADDV.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000010000;
    end
    295: begin //FMADD.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010111000000000000000011011;
    end
    296: begin //MADDVI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010011000000000000000000010;
    end
    297: begin //CLEI_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011000000000000000000000011;
    end
    298: begin //CLEI_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000000100;
    end
    299: begin //CLEI_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011011000000000000000000011;
    end
    300: begin //CLEI_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011001000000000000000000011;
    end
    301: begin //CLEI_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000000100;
    end
    302: begin //CLEI_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011010000000000000000000011;
    end
    303: begin //CLEI_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000000100;
    end
    304: begin //FTQ.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000011100;
    end
    305: begin //CLEI_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000000100;
    end
    306: begin //MAXI_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000000001;
    end
    307: begin //MAXI_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010110000000000000000000001;
    end
    308: begin //MAXI_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010011000000000000000000001;
    end
    309: begin //MAXI_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000000001;
    end
    310: begin //MAXI_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010111000000000000000000001;
    end
    311: begin //MAXI_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000000001;
    end
    312: begin //MAXI_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010100000000000000000000001;
    end
    313: begin //MAXI_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010101000000000000000000001;
    end
    314: begin //MAXI_A.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001100000000000000000000001;
    end
    315: begin //MAXI_A.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111000000000000000000001;
    end
    316: begin //CVT.PS.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000100110;
    end
    317: begin //MAXI_A.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001101000000000000000000001;
    end
    318: begin //BC1T
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111001111111111111111;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000101000000010000000000000000;
    end
    319: begin //MAXI_A.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000000001;
    end
    320: begin //BC1F
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111001111111111111111;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000101000000000000000000000000;
    end
    321: begin //BINSRI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011011100000000000000011110;
    end
    322: begin //ILVL.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000010101;
    end
    323: begin //ILVR.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010101000000000000000010101;
    end
    324: begin //BINSRI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000001111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011000000000000000000011110;
    end
    325: begin //ILVR.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010100000000000000000010101;
    end
    326: begin //BINSRI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011011000000000000000011110;
    end
    327: begin //ILVR.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010111000000000000000010101;
    end
    328: begin //ILVL.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010011000000000000000010101;
    end
    329: begin //BINSRI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011010000000000000000011110;
    end
    330: begin //ILVL.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000010101;
    end
    331: begin //ILVR.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010110000000000000000010101;
    end
    332: begin //ILVL.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000010101;
    end
    333: begin //MUL.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000000010;
    end
    334: begin //FDIV.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010011000000000000000011011;
    end
    335: begin //MTHC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111100000000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000100111000000000000000000000;
    end
    336: begin //PCKOD.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001101000000000000000010101;
    end
    337: begin //PCKOD.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111000000000000000010101;
    end
    338: begin //BSELI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000001011;
    end
    339: begin //MSUB.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000101001;
    end
    340: begin //FDIV.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000011011;
    end
    341: begin //LDC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111111111;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b11010100000000000000000000000000;
    end
    342: begin //MUL.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000000010;
    end
    343: begin //PCKOD.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000010101;
    end
    344: begin //MSUB.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000101000;
    end
    345: begin //CEIL.W.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000001110;
    end
    346: begin //BMZ.V
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000001111;
    end
    347: begin //CEIL.W.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000001110;
    end
    348: begin //SQRT.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000000100;
    end
    349: begin //MADDR_Q.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000011011;
    end
    350: begin //MOV.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000000110;
    end
    351: begin //BCLRI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000000000000000011110;
    end
    352: begin //SLDR.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000010110;
    end
    353: begin //ADD_A.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000010000;
    end
    354: begin //BNZ.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000001110;
    end
    355: begin //ADD_A.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000010000;
    end
    356: begin //ROUND.L.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000001000;
    end
    357: begin //ADD_A.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000010000;
    end
    358: begin //RECIP.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000010101;
    end
    359: begin //MTC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111100000000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000100100000000000000000000000;
    end
    360: begin //BCLRI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011111000000000000000011110;
    end
    361: begin //MADDR_Q.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000011011;
    end
    362: begin //MVTGR_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000010110;
    end
    363: begin //S3IL1.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010110000000000000000000111;
    end
    364: begin //PUL.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000101110;
    end
    365: begin //SAT_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000011110;
    end
    366: begin //FTQ.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010011000000000000000011100;
    end
    367: begin //MOV.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000000110;
    end
    368: begin //MOV.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000000110;
    end
    369: begin //ADDI_A.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000000000;
    end
    370: begin //MADDVI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000000010;
    end
    371: begin //ADDI_A.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000000000;
    end
    372: begin //SE3L1.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010100000000000000000000101;
    end
    373: begin //FTINT_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110010000000000000001111;
    end
    374: begin //MUL_Q.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000011011;
    end
    375: begin //MADDVI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000000010;
    end
    376: begin //FCEQU.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001100000000000000000011100;
    end
    377: begin //FMAX.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100000000000000000011011;
    end
    378: begin //SE3L1.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010110000000000000000000101;
    end
    379: begin //ORI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000001010;
    end
    380: begin //FTINT_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110010010000000000001111;
    end
    381: begin //MUL_Q.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000011011;
    end
    382: begin //ADDVI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000000000;
    end
    383: begin //SLD.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001100000000000000011010;
    end
    384: begin //FMAX.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011101000000000000000011011;
    end
    385: begin //FCEQU.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001101000000000000000011100;
    end
    386: begin //PUU.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000101111;
    end
    387: begin //SHF.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000001100;
    end
    388: begin //CTC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111100000000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000100110000000000000000000000;
    end
    389: begin //BSEL.V
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000001111;
    end
    390: begin //SHF.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011000000000000000000001011;
    end
    391: begin //SHF.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000001100;
    end
    392: begin //MIN_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100000000000000000010001;
    end
    393: begin //CEQ.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000010100;
    end
    394: begin //SAT_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000001111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000011110;
    end
    395: begin //CVT.L.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000100101;
    end
    396: begin //FSUB.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111000000000000000011011;
    end
    397: begin //NMADD.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000110000;
    end
    398: begin //CVT.L.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000100101;
    end
    399: begin //CEQ.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010011000000000000000010100;
    end
    400: begin //PLL.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000101100;
    end
    401: begin //CEQ.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000010100;
    end
    402: begin //MAX_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010011000000000000000010001;
    end
    403: begin //NOR.V
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000001111;
    end
    404: begin //FSUB.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000011011;
    end
    405: begin //NMADD.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000110001;
    end
    406: begin //CEQ.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000010100;
    end
    407: begin //FFINT_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110010100000000000001111;
    end
    408: begin //FTINT_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110011010000000000001111;
    end
    409: begin //S3IR2.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000000111;
    end
    410: begin //FMSUB.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011000000000000000000011011;
    end
    411: begin //FEXDO.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010100000000000000000011100;
    end
    412: begin //S3IR2.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000000111;
    end
    413: begin //FTINT_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110011000000000000001111;
    end
    414: begin //FEXDO.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010101000000000000000011100;
    end
    415: begin //FMSUB.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011001000000000000000011011;
    end
    416: begin //MIN_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011101000000000000000010001;
    end
    417: begin //MADDV.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000010010;
    end
    418: begin //ILVOD.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000000000000000010101;
    end
    419: begin //MADDV.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010011000000000000000010010;
    end
    420: begin //MADDV.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000010010;
    end
    421: begin //FSQRT.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000000000000000001111;
    end
    422: begin //ILVOD.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100000000000000000010101;
    end
    423: begin //MADDV.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000010010;
    end
    424: begin //ILVOD.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011111000000000000000010101;
    end
    425: begin //ILVOD.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011101000000000000000010101;
    end
    426: begin //SUBVI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010111000000000000000000000;
    end
    427: begin //ADDVI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000000000;
    end
    428: begin //SUBVI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010100000000000000000000000;
    end
    429: begin //FCEQ.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000011100;
    end
    430: begin //SUBVI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010101000000000000000000000;
    end
    431: begin //LDI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000001110;
    end
    432: begin //ANDI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000001010;
    end
    433: begin //LDI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000001110;
    end
    434: begin //SUBVI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010110000000000000000000000;
    end
    435: begin //FCEQ.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000011100;
    end
    436: begin //LDI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000001110;
    end
    437: begin //LDI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000001110;
    end
    438: begin //S3IR0.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000000111;
    end
    439: begin //DOTP_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011010000000000000000010010;
    end
    440: begin //FFINT_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110010110000000000001111;
    end
    441: begin //BSET.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000010100;
    end
    442: begin //STX.V
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000001111;
    end
    443: begin //SRLI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010011000000000000000011110;
    end
    444: begin //S3IR0.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000000111;
    end
    445: begin //DOTP_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011011000000000000000010010;
    end
    446: begin //DOTP_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011001000000000000000010010;
    end
    447: begin //S3IR0.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000000111;
    end
    448: begin //DOTP_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011111000000000000000010010;
    end
    449: begin //FSQRT.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000010000000000001111;
    end
    450: begin //MOVER.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000010110;
    end
    451: begin //DOTP_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011101000000000000000010010;
    end
    452: begin //SRLI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010011100000000000000011110;
    end
    453: begin //DOTP_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000000000000000010010;
    end
    454: begin //MOVER.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000010110;
    end
    455: begin //MOVER.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000010110;
    end
    456: begin //MOVER.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000010110;
    end
    457: begin //CVT.S.L
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110101000000000000000100000;
    end
    458: begin //BNEGI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000011111;
    end
    459: begin //MAX_A.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000010001;
    end
    460: begin //BNEGI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111100000000000000011111;
    end
    461: begin //ABS.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000000101;
    end
    462: begin //FCUN.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000011100;
    end
    463: begin //MOVZ.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000010010;
    end
    464: begin //BNEG.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001101000000000000000010100;
    end
    465: begin //NEG.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000000111;
    end
    466: begin //MAX_A.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001101000000000000000010001;
    end
    467: begin //BNEG.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111000000000000000010100;
    end
    468: begin //MAX_A.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111000000000000000010001;
    end
    469: begin //MAX_A.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001100000000000000000010001;
    end
    470: begin //BNEG.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001100000000000000000010100;
    end
    471: begin //FCUN.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000011100;
    end
    472: begin //MOVN.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000010011;
    end
    473: begin //S3IR2.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000000111;
    end
    474: begin //OR.V
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000001111;
    end
    475: begin //FCLT.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000011100;
    end
    476: begin //CVT.S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000100000;
    end
    477: begin //NMADD.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000110110;
    end
    478: begin //MOVN.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000010011;
    end
    479: begin //MVFGE.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000011010;
    end
    480: begin //LD.V
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000001111;
    end
    481: begin //SE3R0.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000000101;
    end
    482: begin //FCLT.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000011100;
    end
    483: begin //MVFGE.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000011010;
    end
    484: begin //ADD.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000000000;
    end
    485: begin //FCLEU.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000011100;
    end
    486: begin //MOVF.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000010001;
    end
    487: begin //MFC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111100000000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000100000000000000000000000000;
    end
    488: begin //ADD.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000000000;
    end
    489: begin //FCLEU.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000011100;
    end
    490: begin //MOVF.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000010001;
    end
    491: begin //SHLI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000011110;
    end
    492: begin //CVT.D.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000100001;
    end
    493: begin //MVFGER.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000010110;
    end
    494: begin //CVT.D.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110100000000000000000100001;
    end
    495: begin //SHLI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011100000000000000011110;
    end
    496: begin //MVFGER.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000010110;
    end
    497: begin //SHLI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000001111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000011110;
    end
    498: begin //CVT.D.L
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110101000000000000000100001;
    end
    499: begin //SHLI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000011110;
    end
    500: begin //MVFGER.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000010110;
    end
    501: begin //MVFG.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100000100000000000001111;
    end
    502: begin //MOVF
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111001111100000000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b00000000000000000000000000000001;
    end
    503: begin //C.cond.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111100001111;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000110000;
    end
    504: begin //SE3R1.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000000101;
    end
    505: begin //MVFG.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100000000000000000001111;
    end
    506: begin //MADD_Q.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000011011;
    end
    507: begin //MOVT
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111001111100000000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b00000000000000010000000000000001;
    end
    508: begin //BMNZI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000001011;
    end
    509: begin //MVFG.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100000010000000000001111;
    end
    510: begin //BINSLI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010111100000000000000011110;
    end
    511: begin //BINSLI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000001111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010100000000000000000011110;
    end
    512: begin //BINSLI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010111000000000000000011110;
    end
    513: begin //RSQRT.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000010110;
    end
    514: begin //LDXC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111110000011111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000000001;
    end
    515: begin //BINSLI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010110000000000000000011110;
    end
    516: begin //SE3R1.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000000101;
    end
    517: begin //RSQRT.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000010110;
    end
    518: begin //SHL.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000010011;
    end
    519: begin //SHL.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000010011;
    end
    520: begin //SHL.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010011000000000000000010011;
    end
    521: begin //FLOOR.W.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000001111;
    end
    522: begin //SHL.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000010011;
    end
    523: begin //DPADDI_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000000011;
    end
    524: begin //DPADDI_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000000011;
    end
    525: begin //RECIP.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000010101;
    end
    526: begin //DPADDI_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000000011;
    end
    527: begin //FMIN.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000011100;
    end
    528: begin //BNZ.V
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000001111;
    end
    529: begin //CVT.S.PL
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000101000;
    end
    530: begin //S3IL2.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011010000000000000000000111;
    end
    531: begin //S3IL2.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011001000000000000000000111;
    end
    532: begin //FLOOR.W.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000001111;
    end
    533: begin //BNZ.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000001110;
    end
    534: begin //DPADDI_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000000011;
    end
    535: begin //CVT.S.PU
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000100000;
    end
    536: begin //FMIN.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000011100;
    end
    537: begin //DPADDI_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000000011;
    end
    538: begin //DPADDI_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000000011;
    end
    539: begin //BNZ.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000001110;
    end
    540: begin //BNZ.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000001110;
    end
    541: begin //SE3R1.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000000101;
    end
    542: begin //MOVT.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000010000000000010001;
    end
    543: begin //MADD.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000100110;
    end
    544: begin //MOVT.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000010000000000010001;
    end
    545: begin //BZ.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000001110;
    end
    546: begin //SUBSI_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000000001;
    end
    547: begin //BZ.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000001110;
    end
    548: begin //BCLR.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000010100;
    end
    549: begin //BZ.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000001110;
    end
    550: begin //BCLR.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000010100;
    end
    551: begin //BCLR.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000010100;
    end
    552: begin //BZ.V
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000001111;
    end
    553: begin //BZ.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000001110;
    end
    554: begin //BCLR.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000010100;
    end
    555: begin //FFINT_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110011110000000000001111;
    end
    556: begin //BSETI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000011111;
    end
    557: begin //CLTI_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000000000000000000011;
    end
    558: begin //ILVEV.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011010000000000000000010101;
    end
    559: begin //BSET.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000010100;
    end
    560: begin //CLTI_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011100000000000000000000011;
    end
    561: begin //BSETI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000001111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000011111;
    end
    562: begin //FFINT_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110011100000000000001111;
    end
    563: begin //BSETI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000001111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011100000000000000011111;
    end
    564: begin //CLTI_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010100000000000000000000011;
    end
    565: begin //CLTI_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011111000000000000000000011;
    end
    566: begin //ILVEV.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011001000000000000000010101;
    end
    567: begin //CLTI_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011101000000000000000000011;
    end
    568: begin //ILVEV.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011011000000000000000010101;
    end
    569: begin //ILVEV.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011000000000000000000010101;
    end
    570: begin //BSETI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000011111;
    end
    571: begin //MAX_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010100000000000000000010001;
    end
    572: begin //NMSUB.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000111001;
    end
    573: begin //FLOG2.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110001010000000000001111;
    end
    574: begin //MULR_Q.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000011011;
    end
    575: begin //MAX_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010111000000000000000010001;
    end
    576: begin //SDC1
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111111111;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b11110100000000000000000000000000;
    end
    577: begin //MAX_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010101000000000000000010001;
    end
    578: begin //SUBSS_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000010001;
    end
    579: begin //DIV.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000000011;
    end
    580: begin //FLOG2.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110001000000000000001111;
    end
    581: begin //SUBSS_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000010001;
    end
    582: begin //MAX_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010110000000000000000010001;
    end
    583: begin //NMSUB.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000111000;
    end
    584: begin //SUBSS_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000010001;
    end
    585: begin //MULR_Q.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000010000000000000000011011;
    end
    586: begin //SUBSS_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000010001;
    end
    587: begin //C.cond.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111100001111;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000110000;
    end
    588: begin //S3IL0.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000000111;
    end
    589: begin //CLE_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000010101;
    end
    590: begin //DOTPI_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000000000000000000010;
    end
    591: begin //SRA.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010111000000000000000010011;
    end
    592: begin //SRA.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010100000000000000000010011;
    end
    593: begin //DOTPI_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011101000000000000000000010;
    end
    594: begin //SRA.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010110000000000000000010011;
    end
    595: begin //DOTPI_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011111000000000000000000010;
    end
    596: begin //S3IL0.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000000111;
    end
    597: begin //ABS.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000000101;
    end
    598: begin //MSUB_Q.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000011011;
    end
    599: begin //DOTPI_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011011000000000000000000010;
    end
    600: begin //DOTPI_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011001000000000000000000010;
    end
    601: begin //CLE_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000011000000000000000010101;
    end
    602: begin //DOTPI_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011010000000000000000000010;
    end
    603: begin //NORI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000001010;
    end
    604: begin //MSUB_Q.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000011011;
    end
    605: begin //ASUBI_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011010000000000000000000000;
    end
    606: begin //MADD.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000100000;
    end
    607: begin //NEG.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000000111;
    end
    608: begin //MOVZ.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000010010;
    end
    609: begin //NEG.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110001000000000000000000111;
    end
    610: begin //ASUBI_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011011000000000000000000000;
    end
    611: begin //ASUBI_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011000000000000000000000000;
    end
    612: begin //MADD.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000011111111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01001100000000000000000000100001;
    end
    613: begin //MSUBV.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010101000000000000000010010;
    end
    614: begin //ASUBI_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011001000000000000000000000;
    end
    615: begin //MIN_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000000000000000010001;
    end
    616: begin //SUB.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000000001;
    end
    617: begin //MAX_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000010001;
    end
    618: begin //FCLTU.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001111000000000000000011100;
    end
    619: begin //SLD.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000011111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000001000000000000000011010;
    end
    620: begin //MIN_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011111000000000000000010001;
    end
    621: begin //MAX_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000010001;
    end
    622: begin //SUB.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000000001;
    end
    623: begin //SLD.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000011010;
    end
    624: begin //FCLTU.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001110000000000000000011100;
    end
    625: begin //MAX_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000010001;
    end
    626: begin //CEQI.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010000000000000000000000011;
    end
    627: begin //FEXP2.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011010000000000000000011011;
    end
    628: begin //MIN_A.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011010000000000000000010001;
    end
    629: begin //MUL.PS
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110110000000000000000000010;
    end
    630: begin //CEQI.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010011000000000000000000011;
    end
    631: begin //PCKOD.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001100000000000000000010101;
    end
    632: begin //CEQI.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010001000000000000000000011;
    end
    633: begin //CVT.S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110100000000000000000100000;
    end
    634: begin //MIN_A.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011011000000000000000010001;
    end
    635: begin //FEXP2.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011011000000000000000011011;
    end
    636: begin //CEQI.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010010000000000000000000011;
    end
    637: begin //MIN_A.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011000000000000000000010001;
    end
    638: begin //MIN_A.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011001000000000000000010001;
    end
    639: begin //CLTI_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010101000000000000000000011;
    end
    640: begin //AVE_S.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000101000000000000000010010;
    end
    641: begin //AND.V
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000000000000000000000001111;
    end
    642: begin //CLTI_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010111000000000000000000011;
    end
    643: begin //AVE_S.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000111000000000000000010010;
    end
    644: begin //ABS.S
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000000001111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01000110000000000000000000000101;
    end
    645: begin //ASUBI_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011110000000000000000000000;
    end
    646: begin //AVE_S.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000100000000000000000010010;
    end
    647: begin //ASUBI_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011101000000000000000000000;
    end
    648: begin //AVE_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111000110000000000000000010010;
    end
    649: begin //CLTI_S.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010110000000000000000000011;
    end
    650: begin //ASUBI_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111011111000000000000000000000;
    end
    651: begin //MSUBV.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010110000000000000000010010;
    end
    652: begin //AVE_U.W
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001010000000000000000010010;
    end
    653: begin //MSUBV.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010111000000000000000010010;
    end
    654: begin //SE3L1.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010101000000000000000000101;
    end
    655: begin //MSUBV.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111010100000000000000000010010;
    end
    656: begin //AVE_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000010010;
    end
    657: begin //AVE_U.D
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001011000000000000000010010;
    end
    658: begin //AVE_U.H
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001001000000000000000010010;
    end
    659: begin //MVTGR_U.B
            gen_random_insn_fxu=$random(seed);
            gen_random_insn_fxu=gen_random_insn_fxu & 32'b00000000000111111111111111000000;
            gen_random_insn_fxu=gen_random_insn_fxu | 32'b01111001000000000000000000010110;
    end
        default:
        gen_random_insn_fxu=32'b0;
        endcase
end
endfunction

//============================================================
// asm typedef
//============================================================
typedef enum {
ASM_MINI_U_H,
ASM_PCKEV_H,
ASM_BINSL_W,
ASM_CTC1,
ASM_MINI_S_W,
ASM_PCKEV_B,
ASM_SUBSSI_U_W,
ASM_MINI_U_D,
ASM_MINI_S_H,
ASM_BINSL_H,
ASM_MINI_S_D,
ASM_BINSL_D,
ASM_MINI_U_W,
ASM_BINSL_B,
ASM_FMAX_A_W,
ASM_CVT_W_D,
ASM_VSHF_D,
ASM_VSHF_B,
ASM_SAT_U_W,
ASM_S3IR0_H,
ASM_DPADD_U_W,
ASM_VSHF_H,
ASM_VSHF_W,
ASM_SUXC1,
ASM_MFHC1,
ASM_SAT_U_B,
ASM_SAT_U_D,
ASM_CVT_W_S,
ASM_MINI_U_B,
ASM_SAT_U_H,
ASM_PCKEV_D,
ASM_DPADD_U_D,
ASM_CLT_U_H,
ASM_PCNT_W,
ASM_TGEU,
ASM_ROUND_W_D,
ASM_TGEI,
ASM_LHU,
ASM_PCNT_B,
ASM_BMZ_V,
ASM_ROUND_W_S,
ASM_MSUBU,
ASM_CLT_U_D,
ASM_TEQI,
ASM_PUU_PS,
ASM_FADD_D,
ASM_XORI_B,
ASM_CEIL_L_D,
ASM_MIN_U_W,
ASM_TGEIU,
ASM_MULV_D,
ASM_MIN_U_H,
ASM_SQRT_D,
ASM_FADD_W,
ASM_FMAX_A_D,
ASM_MSUBR_Q_H,
ASM_MIN_U_B,
ASM_CEIL_L_S,
ASM_MIN_U_D,
ASM_BLTZ,
ASM_ADDS_U_H,
ASM_ADDS_U_B,
ASM_DPSUB_U_W,
ASM_ADDS_U_D,
ASM_BC1TL,
ASM_PCKEV_W,
ASM_ADDSI_U_B,
ASM_BEQ,
ASM_ADDS_U_W,
ASM_MSUBR_Q_W,
ASM_FFQR_W,
ASM_SLDR_B,
ASM_FFQL_D,
ASM_FFQR_D,
ASM_MINI_S_B,
ASM_FFQL_W,
ASM_MOVF_PS,
ASM_ADD_A_D,
ASM_ADDVI_W,
ASM_S3IR1_W,
ASM_SAT_S_H,
ASM_BSEL_V,
ASM_DPSUBI_U_H,
ASM_WSBH,
ASM_SAT_S_B,
ASM_ADDVI_B,
ASM_S3IR1_B,
ASM_ADDVI_D,
ASM_FCLASS_D,
ASM_S3IR1_H,
ASM_ADDVI_H,
ASM_SRLI_H,
ASM_DPSUBI_U_D,
ASM_SUBV_D,
ASM_ADD_A_B,
ASM_DPSUB_U_D,
ASM_SRLI_B,
ASM_SRLI_D,
ASM_TLBWI,
ASM_MTLO,
ASM_SUBV_W,
ASM_SRLI_W,
ASM_NOR,
ASM_SE3L2_H,
ASM_BINSR_H,
ASM_BSET_D,
ASM_BSET_B,
ASM_SE3L2_B,
ASM_BINSR_B,
ASM_BINSR_D,
ASM_BSET_H,
ASM_BSET_W,
ASM_C_cond_D,
ASM_SUBSI_S_D,
ASM_MADD_Q_W,
ASM_BINSR_W,
ASM_SE3L2_W,
ASM_BCLRI_D,
ASM_DPADD_U_H,
ASM_ALNV_PS,
ASM_ADD_PS,
ASM_MULVI_B,
ASM_CACHE,
ASM_MULVI_D,
ASM_FEXUPR_W,
ASM_MULVI_H,
ASM_FCUN_D,
ASM_BCLRI_B,
ASM_TRUNC_W_D,
ASM_LUXC1,
ASM_CFCMSA,
ASM_FEXUPR_D,
ASM_MULVI_W,
ASM_SLDR_D,
ASM_DIVU,
ASM_TRUNC_W_S,
ASM_BGEZALL,
ASM_MVTGR_U_H,
ASM_DPSUBI_S_H,
ASM_SLDR_H,
ASM_FMUL_W,
ASM_DPSUBI_U_W,
ASM_ST_V,
ASM_ASUB_U_D,
ASM_SW,
ASM_DPSUBI_S_D,
ASM_PLU_PS,
ASM_SH,
ASM_FMUL_D,
ASM_ORI,
ASM_SC,
ASM_SB,
ASM_LWC1,
ASM_DPSUBI_S_W,
ASM_CLE_S_H,
ASM_MVTG_S_H,
ASM_SE3R0_B,
ASM_MVTG_S_B,
ASM_SLD_D,
ASM_CLE_S_W,
ASM_SUBSSI_U_B,
ASM_FLOOR_L_S,
ASM_MOVZ_D,
ASM_SE3R0_W,
ASM_DIV_D,
ASM_SYNCI,
ASM_CLE_S_D,
ASM_FLOOR_L_D,
ASM_MVTG_S_W,
ASM_CLE_S_B,
ASM_FLOG2_W,
ASM_MAX_A_D,
ASM_LB,
ASM_ASUB_S_D,
ASM_LL,
ASM_SWXC1,
ASM_LH,
ASM_SUBSSI_U_H,
ASM_LW,
ASM_SRAI_B,
ASM_LWXC1,
ASM_ADDSI_S_D,
ASM_FCUN_W,
ASM_ABS_PS,
ASM_LDX_V,
ASM_ADDS_A_D,
ASM_ADDS_A_B,
ASM_AVEI_S_D,
ASM_BGEZ,
ASM_SE3L0_W,
ASM_ADDS_A_H,
ASM_SUBSSI_U_D,
ASM_ADDS_A_W,
ASM_SE3L0_H,
ASM_SRAI_W,
ASM_BMZI_B,
ASM_SUBSS_U_B,
ASM_SE3L0_B,
ASM_MVTGR_S_B,
ASM_NLZC_B,
ASM_ADDS_S_D,
ASM_ADDS_S_B,
ASM_SRAI_H,
ASM_MINI_A_W,
ASM_MSUB_PS,
ASM_ADDS_S_H,
ASM_ADDS_S_W,
ASM_S3IL1_B,
ASM_MINI_A_H,
ASM_MINI_A_D,
ASM_MINI_A_B,
ASM_PCNT_D,
ASM_ROTR,
ASM_S3IL2_B,
ASM_SUBS_U_H,
ASM_SUBSI_U_D,
ASM_DERET,
ASM_SUBS_U_B,
ASM_FRINT_D,
ASM_SUBSI_U_B,
ASM_MVTGR_U_W,
ASM_PCNT_H,
ASM_SUBS_U_W,
ASM_SUBSI_U_W,
ASM_FRINT_W,
ASM_TLBR,
ASM_TLBP,
ASM_BGTZ,
ASM_LBU,
ASM_SYSCALL,
ASM_CTCMSA,
ASM_DPSUB_S_W,
ASM_SUBS_S_W,
ASM_SRAI_D,
ASM_S3IL0_B,
ASM_DPSUB_S_H,
ASM_SUBS_S_B,
ASM_SUBS_S_D,
ASM_DPSUB_S_D,
ASM_SE3R2_W,
ASM_FCLE_W,
ASM_MOVE_H,
ASM_MOVE_D,
ASM_MOVE_B,
ASM_PREFX,
ASM_JAL,
ASM_MULV_W,
ASM_SE3R2_B,
ASM_MOVE_W,
ASM_MOVE_V,
ASM_SE3R2_H,
ASM_SQRT_S,
ASM_NLZC_H,
ASM_TNEI,
ASM_BC1FL,
ASM_CLT_S_H,
ASM_TLTI,
ASM_MSUBVI_W,
ASM_AVEI_U_B,
ASM_CLT_S_B,
ASM_CLE_U_H,
ASM_CLT_S_D,
ASM_AVEI_U_H,
ASM_MSUBVI_D,
ASM_BMNZ_V,
ASM_AVEI_U_W,
ASM_CLE_U_W,
ASM_MSUBVI_B,
ASM_LUI,
ASM_XOR,
ASM_MSUBVI_H,
ASM_MSUB,
ASM_TLTIU,
ASM_MADD,
ASM_ADDSI_A_W,
ASM_CLT_U_W,
ASM_ADDSI_A_B,
ASM_MADDVI_W,
ASM_ADDSI_A_D,
ASM_CLE_U_B,
ASM_ADDSI_A_H,
ASM_CLT_U_B,
ASM_ADDSI_U_D,
ASM_SUBU,
ASM_EI,
ASM_BLTZL,
ASM_NLOC_W,
ASM_BLTZALL,
ASM_ADDSI_U_H,
ASM_ADDSI_U_W,
ASM_NLOC_B,
ASM_NLOC_D,
ASM_MVTGR_S_W,
ASM_SAT_S_D,
ASM_NLOC_H,
ASM_DPSUB_U_H,
ASM_SDXC1,
ASM_ASUB_U_B,
ASM_ASUB_S_W,
ASM_AVEI_S_W,
ASM_MVTG_U_B,
ASM_ADDSI_S_W,
ASM_MULV_H,
ASM_ASUB_U_H,
ASM_MVTG_U_H,
ASM_AVEI_S_B,
ASM_ADDSI_S_B,
ASM_MVTG_U_W,
ASM_ASUB_U_W,
ASM_MOVN_PS,
ASM_ASUB_S_B,
ASM_ADDSI_S_H,
ASM_AVEI_S_H,
ASM_ASUB_S_H,
ASM_OR_V,
ASM_FEXUPL_D,
ASM_TRUNC_L_S,
ASM_SRL_W,
ASM_NLZC_W,
ASM_BGEZAL,
ASM_TRUNC_L_D,
ASM_SRL_H,
ASM_MUL,
ASM_SRL_D,
ASM_SRL_B,
ASM_NLZC_D,
ASM_FMIN_A_D,
ASM_MUL_Q_W,
ASM_SEB,
ASM_SEH,
ASM_ADDV_D,
ASM_CLO,
ASM_FMADD_W,
ASM_ADDV_B,
ASM_NMSUB_PS,
ASM_ADDV_H,
ASM_S3IR2_H,
ASM_ADDV_W,
ASM_FMADD_D,
ASM_CLZ,
ASM_MADDVI_D,
ASM_FEXP2_D,
ASM_WAIT,
ASM_CLEI_S_B,
ASM_CLEI_U_W,
ASM_CLEI_S_D,
ASM_CLEI_S_H,
ASM_BREAK,
ASM_CLEI_U_D,
ASM_FEXUPL_W,
ASM_CLEI_S_W,
ASM_CLEI_U_B,
ASM_FTQ_H,
ASM_FMIN_A_W,
ASM_CLEI_U_H,
ASM_MAXI_S_B,
ASM_MAXI_U_W,
ASM_SWL,
ASM_DI,
ASM_MAXI_S_H,
ASM_BLTZAL,
ASM_MAXI_U_D,
ASM_MAXI_S_W,
ASM_MAXI_U_B,
ASM_SWR,
ASM_MAXI_U_H,
ASM_MULT,
ASM_MAXI_A_B,
ASM_MAXI_A_D,
ASM_CVT_PS_S,
ASM_FMAX_D,
ASM_BC1T,
ASM_TLT,
ASM_MAXI_A_W,
ASM_TGE,
ASM_BC1F,
ASM_BINSRI_B,
ASM_ILVL_W,
ASM_ILVR_H,
ASM_BINSRI_D,
ASM_SLT,
ASM_ILVR_B,
ASM_BINSRI_H,
ASM_ILVR_D,
ASM_SLL,
ASM_ILVL_D,
ASM_BINSRI_W,
ASM_SUBS_S_H,
ASM_ILVL_B,
ASM_ILVR_W,
ASM_ILVL_H,
ASM_MUL_D,
ASM_FDIV_D,
ASM_MTHC1,
ASM_PCKOD_H,
ASM_PCKOD_D,
ASM_BSELI_B,
ASM_MSUB_D,
ASM_FDIV_W,
ASM_MUL_S,
ASM_PCKOD_W,
ASM_MSUB_S,
ASM_S3IL1_H,
ASM_CEIL_W_D,
ASM_JR,
ASM_EXT,
ASM_CEIL_W_S,
ASM_SUBSI_U_H,
ASM_RECIP_D,
ASM_MOV_PS,
ASM_BCLRI_W,
ASM_SLDR_W,
ASM_ROUND_L_S,
ASM_ADD_A_H,
ASM_ROUND_L_D,
ASM_ADD_A_W,
ASM_RECIP_S,
ASM_MTC0,
ASM_MTC1,
ASM_BCLRI_H,
ASM_MADDR_Q_H,
ASM_SUBS_U_D,
ASM_MVTGR_S_H,
ASM_S3IL1_W,
ASM_PUL_PS,
ASM_XOR_V,
ASM_SAT_S_W,
ASM_MULV_B,
ASM_BNE,
ASM_ADDU,
ASM_FTQ_W,
ASM_SLTI,
ASM_MOV_D,
ASM_ILVEV_H,
ASM_SLTU,
ASM_MOV_S,
ASM_ADDI,
ASM_ADDI_A_B,
ASM_MADDVI_H,
ASM_ADDI_A_D,
ASM_SE3L1_B,
ASM_FTINT_S_W,
ASM_ADDI_A_H,
ASM_MADDVI_B,
ASM_SYNC,
ASM_FCEQU_W,
ASM_FMAX_W,
ASM_SE3L1_W,
ASM_ORI_B,
ASM_FTINT_S_D,
ASM_ADDI_A_W,
ASM_DPADD_S_H,
ASM_SLD_W,
ASM_LDC1,
ASM_FCEQU_D,
ASM_SHF_W,
ASM_DPADD_S_D,
ASM_SHF_B,
ASM_CEQI_W,
ASM_SHF_H,
ASM_MAX_S_H,
ASM_CEQ_W,
ASM_FCLASS_W,
ASM_CVT_L_D,
ASM_FSUB_D,
ASM_NMADD_S,
ASM_CVT_L_S,
ASM_CEQ_D,
ASM_PLL_PS,
ASM_CEQ_B,
ASM_MAX_S_D,
ASM_NOR_V,
ASM_FSUB_W,
ASM_NMADD_D,
ASM_CEQ_H,
ASM_FFINT_S_W,
ASM_AND,
ASM_FTINT_U_D,
ASM_S3IR2_B,
ASM_FMSUB_W,
ASM_FEXDO_H,
ASM_CLTI_S_W,
ASM_FTINT_U_W,
ASM_FEXDO_W,
ASM_FMSUB_D,
ASM_MIN_S_H,
ASM_CEQI_B,
ASM_MADDV_B,
ASM_ILVOD_W,
ASM_MADDV_D,
ASM_MADDV_H,
ASM_MIN_A_W,
ASM_ILVOD_B,
ASM_MADDV_W,
ASM_ILVOD_D,
ASM_ILVOD_H,
ASM_MULTU,
ASM_SUBVI_D,
ASM_MADDU,
ASM_DPADD_S_W,
ASM_ANDI,
ASM_CEQI_D,
ASM_SUBVI_B,
ASM_FCEQ_D,
ASM_MAXI_S_D,
ASM_SUBVI_H,
ASM_LDI_W,
ASM_ANDI_B,
ASM_LDI_H,
ASM_SUBVI_W,
ASM_FCEQ_W,
ASM_LDI_B,
ASM_LDI_D,
ASM_SRA,
ASM_DOTP_S_W,
ASM_FFINT_S_D,
ASM_STX_V,
ASM_FMIN_D,
ASM_SUBV_B,
ASM_SRL,
ASM_S3IR0_B,
ASM_DOTP_S_D,
ASM_XORI,
ASM_DOTP_S_H,
ASM_MUL_Q_H,
ASM_DOTP_U_D,
ASM_JALR,
ASM_ERET,
ASM_MIN_A_D,
ASM_MOVER_W,
ASM_PREF,
ASM_DOTP_U_H,
ASM_SUBV_H,
ASM_DOTP_U_W,
ASM_SRLV,
ASM_MOVER_H,
ASM_MOVER_D,
ASM_MOVER_B,
ASM_CFC1,
ASM_BNEGI_H,
ASM_MAX_A_W,
ASM_BNEGI_B,
ASM_BNEG_W,
ASM_BNEGI_D,
ASM_MOVZ_S,
ASM_BNEG_H,
ASM_NEG_PS,
ASM_MAX_A_H,
ASM_BNEG_D,
ASM_DIV,
ASM_INS,
ASM_MAX_A_B,
ASM_BNEG_B,
ASM_BNEGI_W,
ASM_MOVN_D,
ASM_S3IR2_W,
ASM_BLEZL,
ASM_MVFGE_W,
ASM_FCLT_W,
ASM_MIN_A_H,
ASM_NMADD_PS,
ASM_MOVN_S,
ASM_MVFGE_H,
ASM_LD_V,
ASM_TLBWR,
ASM_SE3R0_H,
ASM_FCLT_D,
ASM_MVFGE_B,
ASM_ADD_S,
ASM_FCLEU_D,
ASM_MOVF_S,
ASM_MFC0,
ASM_MFC1,
ASM_ADD_D,
ASM_FCLEU_W,
ASM_MOVF_D,
ASM_FCLE_D,
ASM_SHLI_W,
ASM_CVT_D_S,
ASM_MVFGER_W,
ASM_CVT_D_W,
ASM_SHLI_B,
ASM_MVFGER_H,
ASM_SHLI_D,
ASM_CVT_D_L,
ASM_MAXI_A_H,
ASM_SHLI_H,
ASM_MVFGER_B,
ASM_MOVN,
ASM_MVFG_W,
ASM_MOVF,
ASM_C_cond_S,
ASM_SE3R1_B,
ASM_MOVZ,
ASM_MVFG_B,
ASM_MADD_Q_H,
ASM_MOVT,
ASM_BMNZI_B,
ASM_MVFG_H,
ASM_BNEL,
ASM_BINSLI_B,
ASM_BINSLI_D,
ASM_BINSLI_H,
ASM_RSQRT_S,
ASM_LDXC1,
ASM_BINSLI_W,
ASM_SE3R1_H,
ASM_RSQRT_D,
ASM_SHL_W,
ASM_SHL_H,
ASM_SHL_D,
ASM_DPADDI_S_H,
ASM_SHL_B,
ASM_FLOOR_W_D,
ASM_DPADDI_U_W,
ASM_SUBSI_S_B,
ASM_DPADDI_S_D,
ASM_BNZ_W,
ASM_BNZ_V,
ASM_CVT_S_PL,
ASM_S3IL2_W,
ASM_S3IL2_H,
ASM_FLOOR_W_S,
ASM_BNZ_H,
ASM_DPADDI_U_D,
ASM_CVT_S_PU,
ASM_BNZ_D,
ASM_DPADDI_U_H,
ASM_DPADDI_S_W,
ASM_OR,
ASM_BNZ_B,
ASM_SLLV,
ASM_SE3R1_W,
ASM_SUBSI_S_W,
ASM_MOVT_S,
ASM_MFHI,
ASM_SRA_H,
ASM_BGTZL,
ASM_MADD_PS,
ASM_ROTRV,
ASM_BZ_H,
ASM_SUBSI_S_H,
ASM_BZ_B,
ASM_BCLR_W,
ASM_BZ_D,
ASM_BCLR_H,
ASM_BCLR_B,
ASM_BZ_V,
ASM_BZ_W,
ASM_BCLR_D,
ASM_FFINT_U_D,
ASM_BSETI_W,
ASM_CLTI_U_W,
ASM_ILVEV_W,
ASM_CLTI_U_B,
ASM_BSETI_D,
ASM_FFINT_U_W,
ASM_BSETI_B,
ASM_CLTI_S_B,
ASM_CLTI_U_D,
ASM_FMIN_W,
ASM_CLTI_U_H,
ASM_ILVEV_D,
ASM_ILVEV_B,
ASM_BSETI_H,
ASM_MAX_U_B,
ASM_NMSUB_D,
ASM_FLOG2_D,
ASM_MULR_Q_W,
ASM_MAX_U_D,
ASM_SDC1,
ASM_MAX_U_H,
ASM_SUBSS_U_W,
ASM_SWC1,
ASM_MOVT_PS,
ASM_SUBSS_U_H,
ASM_MAX_U_W,
ASM_NMSUB_S,
ASM_DIV_S,
ASM_MULR_Q_H,
ASM_SUBSS_U_D,
ASM_C_cond_PS,
ASM_S3IL0_H,
ASM_SUB,
ASM_AVEI_U_D,
ASM_DOTPI_U_W,
ASM_SRA_D,
ASM_SRA_B,
ASM_BLEZ,
ASM_BGEZL,
ASM_DOTPI_U_H,
ASM_SRA_W,
ASM_DOTPI_U_D,
ASM_S3IL0_W,
ASM_ABS_D,
ASM_MSUB_Q_W,
ASM_DOTPI_S_D,
ASM_DOTPI_S_H,
ASM_CLE_U_D,
ASM_DOTPI_S_W,
ASM_MIN_S_B,
ASM_NORI_B,
ASM_TEQ,
ASM_MSUB_Q_H,
ASM_ASUBI_S_W,
ASM_MADD_S,
ASM_NEG_S,
ASM_MOVZ_PS,
ASM_J,
ASM_NEG_D,
ASM_ADD,
ASM_ASUBI_S_D,
ASM_ASUBI_S_B,
ASM_MADD_D,
ASM_MSUBV_H,
ASM_ASUBI_S_H,
ASM_MIN_S_W,
ASM_SUB_S,
ASM_SLTIU,
ASM_MAX_S_W,
ASM_FCLTU_D,
ASM_SLD_H,
ASM_MIN_S_D,
ASM_SUB_D,
ASM_SUB_PS,
ASM_SLD_B,
ASM_FCLTU_W,
ASM_MAX_S_B,
ASM_BEQL,
ASM_FEXP2_W,
ASM_FSQRT_W,
ASM_MUL_PS,
ASM_MFLO,
ASM_LWR,
ASM_PCKOD_B,
ASM_CEQI_H,
ASM_CVT_S_W,
ASM_FSQRT_D,
ASM_SRAV,
ASM_S3IR0_W,
ASM_CVT_S_L,
ASM_LWL,
ASM_MIN_A_B,
ASM_CVT_S_D,
ASM_TLTU,
ASM_MOVT_D,
ASM_CLT_S_W,
ASM_ADDIU,
ASM_CLTI_S_H,
ASM_AVE_S_H,
ASM_AND_V,
ASM_CLTI_S_D,
ASM_AVE_S_D,
ASM_ABS_S,
ASM_ASUBI_U_W,
ASM_AVE_S_B,
ASM_TNE,
ASM_ASUBI_U_H,
ASM_AVE_S_W,
ASM_ASUBI_U_B,
ASM_ASUBI_U_D,
ASM_MSUBV_W,
ASM_AVE_U_W,
ASM_MADDR_Q_W,
ASM_MSUBV_D,
ASM_SE3L1_H,
ASM_MSUBV_B,
ASM_AVE_U_B,
ASM_AVE_U_D,
ASM_AVE_U_H,
ASM_MTHI,
ASM_MVTGR_U_B,
ASM_RES
}insn_asm_t;

//============================================================
// asm function 
//============================================================
function automatic insn_asm_t fxu_sim_asm;
input [31:0]  insn;
begin
casex(insn)
32'b01111000001xxxxxxxxxxxxxxx000010://MINI_U.H
 return ASM_MINI_U_H;
32'b01111001001xxxxxxxxxxxxxxx010101://PCKEV.H
 return ASM_PCKEV_H;
32'b01111011110xxxxxxxxxxxxxxx010011://BINSL.W
 return ASM_BINSL_W;
32'b01000100110xxxxxxxxxx00000000000://CTC1
 return ASM_CTC1;
32'b01111011110xxxxxxxxxxxxxxx000001://MINI_S.W
 return ASM_MINI_S_W;
32'b01111001000xxxxxxxxxxxxxxx010101://PCKEV.B
 return ASM_PCKEV_B;
32'b01111001010xxxxxxxxxxxxxxx000001://SUBSSI_U.W
 return ASM_SUBSSI_U_W;
32'b01111000011xxxxxxxxxxxxxxx000010://MINI_U.D
 return ASM_MINI_U_D;
32'b01111011101xxxxxxxxxxxxxxx000001://MINI_S.H
 return ASM_MINI_S_H;
32'b01111011101xxxxxxxxxxxxxxx010011://BINSL.H
 return ASM_BINSL_H;
32'b01111011111xxxxxxxxxxxxxxx000001://MINI_S.D
 return ASM_MINI_S_D;
32'b01111011111xxxxxxxxxxxxxxx010011://BINSL.D
 return ASM_BINSL_D;
32'b01111000010xxxxxxxxxxxxxxx000010://MINI_U.W
 return ASM_MINI_U_W;
32'b01111011100xxxxxxxxxxxxxxx010011://BINSL.B
 return ASM_BINSL_B;
32'b01111011110xxxxxxxxxxxxxxx011011://FMAX_A.W
 return ASM_FMAX_A_W;
32'b0100011000100000xxxxxxxxxx100100://CVT.W.D
 return ASM_CVT_W_D;
32'b01111000111xxxxxxxxxxxxxxx010101://VSHF.D
 return ASM_VSHF_D;
32'b01111000100xxxxxxxxxxxxxxx010101://VSHF.B
 return ASM_VSHF_B;
32'b01111000110xxxxxxxxxxxxxxx011110://SAT_U.W
 return ASM_SAT_U_W;
32'b01111000001xxxxxxxxxxxxxxx000111://S3IR0.H
 return ASM_S3IR0_H;
32'b01111000110xxxxxxxxxxxxxxx010011://DPADD_U.W
 return ASM_DPADD_U_W;
32'b01111000101xxxxxxxxxxxxxxx010101://VSHF.H
 return ASM_VSHF_H;
32'b01111000110xxxxxxxxxxxxxxx010101://VSHF.W
 return ASM_VSHF_W;
32'b010011xxxxxxxxxxxxxxx00000001101://SUXC1
 return ASM_SUXC1;
32'b01000100011xxxxxxxxxx00000000000://MFHC1
 return ASM_MFHC1;
32'b0111100011110xxxxxxxxxxxxx011110://SAT_U.B
 return ASM_SAT_U_B;
32'b0111100010xxxxxxxxxxxxxxxx011110://SAT_U.D
 return ASM_SAT_U_D;
32'b0100011000000000xxxxxxxxxx100100://CVT.W.S
 return ASM_CVT_W_S;
32'b01111000000xxxxxxxxxxxxxxx000010://MINI_U.B
 return ASM_MINI_U_B;
32'b011110001110xxxxxxxxxxxxxx011110://SAT_U.H
 return ASM_SAT_U_H;
32'b01111001011xxxxxxxxxxxxxxx010101://PCKEV.D
 return ASM_PCKEV_D;
32'b01111000111xxxxxxxxxxxxxxx010011://DPADD_U.D
 return ASM_DPADD_U_D;
32'b01111011101xxxxxxxxxxxxxxx010100://CLT_U.H
 return ASM_CLT_U_H;
32'b0111101110000110xxxxxxxxxx001111://PCNT.W
 return ASM_PCNT_W;
32'b000000xxxxxxxxxxxxxxxxxxxx110001://TGEU
 return ASM_TGEU;
32'b0100011000100000xxxxxxxxxx001100://ROUND.W.D
 return ASM_ROUND_W_D;
32'b000001xxxxx01000xxxxxxxxxxxxxxxx://TGEI
 return ASM_TGEI;
32'b100101xxxxxxxxxxxxxxxxxxxxxxxxxx://LHU
 return ASM_LHU;
32'b0111101110000100xxxxxxxxxx001111://PCNT.B
 return ASM_PCNT_B;
32'b01111000101xxxxxxxxxxxxxxx001111://BMZ.V
 return ASM_BMZ_V;
32'b0100011000000000xxxxxxxxxx001100://ROUND.W.S
 return ASM_ROUND_W_S;
32'b011100xxxxxxxxxx0000000000000101://MSUBU
 return ASM_MSUBU;
32'b01111011111xxxxxxxxxxxxxxx010100://CLT_U.D
 return ASM_CLT_U_D;
32'b000001xxxxx01100xxxxxxxxxxxxxxxx://TEQI
 return ASM_TEQI;
32'b01000110110xxxxxxxxxxxxxxx101111://PUU.PS
 return ASM_PUU_PS;
32'b01111001101xxxxxxxxxxxxxxx011011://FADD.D
 return ASM_FADD_D;
32'b01111011xxxxxxxxxxxxxxxxxx001010://XORI.B
 return ASM_XORI_B;
32'b0100011000100000xxxxxxxxxx001010://CEIL.L.D
 return ASM_CEIL_L_D;
32'b01111000010xxxxxxxxxxxxxxx010010://MIN_U.W
 return ASM_MIN_U_W;
32'b000001xxxxx01001xxxxxxxxxxxxxxxx://TGEIU
 return ASM_TGEIU;
32'b01111001111xxxxxxxxxxxxxxx010010://MULV.D
 return ASM_MULV_D;
32'b01111000001xxxxxxxxxxxxxxx010010://MIN_U.H
 return ASM_MIN_U_H;
32'b0100011000100000xxxxxxxxxx000100://SQRT.D
 return ASM_SQRT_D;
32'b01111001100xxxxxxxxxxxxxxx011011://FADD.W
 return ASM_FADD_W;
32'b01111011111xxxxxxxxxxxxxxx011011://FMAX_A.D
 return ASM_FMAX_A_D;
32'b01111001010xxxxxxxxxxxxxxx011011://MSUBR_Q.H
 return ASM_MSUBR_Q_H;
32'b01111000000xxxxxxxxxxxxxxx010010://MIN_U.B
 return ASM_MIN_U_B;
32'b0100011000000000xxxxxxxxxx001010://CEIL.L.S
 return ASM_CEIL_L_S;
32'b01111000011xxxxxxxxxxxxxxx010010://MIN_U.D
 return ASM_MIN_U_D;
32'b000001xxxxx00000xxxxxxxxxxxxxxxx://BLTZ
 return ASM_BLTZ;
32'b01111010001xxxxxxxxxxxxxxx010000://ADDS_U.H
 return ASM_ADDS_U_H;
32'b01111010000xxxxxxxxxxxxxxx010000://ADDS_U.B
 return ASM_ADDS_U_B;
32'b01111001110xxxxxxxxxxxxxxx010011://DPSUB_U.W
 return ASM_DPSUB_U_W;
32'b01111010011xxxxxxxxxxxxxxx010000://ADDS_U.D
 return ASM_ADDS_U_D;
32'b01000101000xxx11xxxxxxxxxxxxxxxx://BC1TL
 return ASM_BC1TL;
32'b01111001010xxxxxxxxxxxxxxx010101://PCKEV.W
 return ASM_PCKEV_W;
32'b01111010000xxxxxxxxxxxxxxx000000://ADDSI_U.B
 return ASM_ADDSI_U_B;
32'b000100xxxxxxxxxxxxxxxxxxxxxxxxxx://BEQ
 return ASM_BEQ;
32'b01111010010xxxxxxxxxxxxxxx010000://ADDS_U.W
 return ASM_ADDS_U_W;
32'b01111001011xxxxxxxxxxxxxxx011011://MSUBR_Q.W
 return ASM_MSUBR_Q_W;
32'b0111101111010010xxxxxxxxxx001111://FFQR.W
 return ASM_FFQR_W;
32'b01111001100xxxxxxxxxxxxxxx010110://SLDR.B
 return ASM_SLDR_B;
32'b0111101111010001xxxxxxxxxx001111://FFQL.D
 return ASM_FFQL_D;
32'b0111101111010011xxxxxxxxxx001111://FFQR.D
 return ASM_FFQR_D;
32'b01111011100xxxxxxxxxxxxxxx000001://MINI_S.B
 return ASM_MINI_S_B;
32'b0111101111010000xxxxxxxxxx001111://FFQL.W
 return ASM_FFQL_W;
32'b01000110110xxx00xxxxxxxxxx010001://MOVF.PS
 return ASM_MOVF_PS;
32'b01111000111xxxxxxxxxxxxxxx010000://ADD_A.D
 return ASM_ADD_A_D;
32'b01111000010xxxxxxxxxxxxxxx000000://ADDVI.W
 return ASM_ADDVI_W;
32'b01111000110xxxxxxxxxxxxxxx000111://S3IR1.W
 return ASM_S3IR1_W;
32'b011110000110xxxxxxxxxxxxxx011110://SAT_S.H
 return ASM_SAT_S_H;
32'b01111000110xxxxxxxxxxxxxxx001111://BSEL.V
 return ASM_BSEL_V;
32'b01111001101xxxxxxxxxxxxxxx000011://DPSUBI_U.H
 return ASM_DPSUBI_U_H;
32'b01111100000xxxxxxxxxx00010100000://WSBH
 return ASM_WSBH;
32'b0111100001110xxxxxxxxxxxxx011110://SAT_S.B
 return ASM_SAT_S_B;
32'b01111000000xxxxxxxxxxxxxxx000000://ADDVI.B
 return ASM_ADDVI_B;
32'b01111000100xxxxxxxxxxxxxxx000111://S3IR1.B
 return ASM_S3IR1_B;
32'b01111000011xxxxxxxxxxxxxxx000000://ADDVI.D
 return ASM_ADDVI_D;
32'b0111101111000111xxxxxxxxxx001111://FCLASS.D
 return ASM_FCLASS_D;
32'b01111000101xxxxxxxxxxxxxxx000111://S3IR1.H
 return ASM_S3IR1_H;
32'b01111000001xxxxxxxxxxxxxxx000000://ADDVI.H
 return ASM_ADDVI_H;
32'b011110100110xxxxxxxxxxxxxx011110://SRLI.H
 return ASM_SRLI_H;
32'b01111001111xxxxxxxxxxxxxxx000011://DPSUBI_U.D
 return ASM_DPSUBI_U_D;
32'b01111010111xxxxxxxxxxxxxxx010000://SUBV.D
 return ASM_SUBV_D;
32'b01111000100xxxxxxxxxxxxxxx010000://ADD_A.B
 return ASM_ADD_A_B;
32'b01111001111xxxxxxxxxxxxxxx010011://DPSUB_U.D
 return ASM_DPSUB_U_D;
32'b0111101001110xxxxxxxxxxxxx011110://SRLI.B
 return ASM_SRLI_B;
32'b0111101000xxxxxxxxxxxxxxxx011110://SRLI.D
 return ASM_SRLI_D;
32'b01000010000000000000000000000010://TLBWI
 return ASM_TLBWI;
32'b000000xxxxx000000000000000010011://MTLO
 return ASM_MTLO;
32'b01111010110xxxxxxxxxxxxxxx010000://SUBV.W
 return ASM_SUBV_W;
32'b01111010010xxxxxxxxxxxxxxx011110://SRLI.W
 return ASM_SRLI_W;
32'b000000xxxxxxxxxxxxxxx00000100111://NOR
 return ASM_NOR;
32'b01111011001xxxxxxxxxxxxxxx000101://SE3L2.H
 return ASM_SE3L2_H;
32'b01111000001xxxxxxxxxxxxxxx010100://BINSR.H
 return ASM_BINSR_H;
32'b01111001011xxxxxxxxxxxxxxx010100://BSET.D
 return ASM_BSET_D;
32'b01111001000xxxxxxxxxxxxxxx010100://BSET.B
 return ASM_BSET_B;
32'b01111011000xxxxxxxxxxxxxxx000101://SE3L2.B
 return ASM_SE3L2_B;
32'b01111000000xxxxxxxxxxxxxxx010100://BINSR.B
 return ASM_BINSR_B;
32'b01111000011xxxxxxxxxxxxxxx010100://BINSR.D
 return ASM_BINSR_D;
32'b01111001001xxxxxxxxxxxxxxx010100://BSET.H
 return ASM_BSET_H;
32'b01111001010xxxxxxxxxxxxxxx010100://BSET.W
 return ASM_BSET_W;
32'b01000110001xxxxxxxxxxxxx0011xxxx://C.cond.D
 return ASM_C_cond_D;
32'b01111000011xxxxxxxxxxxxxxx000001://SUBSI_S.D
 return ASM_SUBSI_S_D;
32'b01111000101xxxxxxxxxxxxxxx011011://MADD_Q.W
 return ASM_MADD_Q_W;
32'b01111000010xxxxxxxxxxxxxxx010100://BINSR.W
 return ASM_BINSR_W;
32'b01111011010xxxxxxxxxxxxxxx000101://SE3L2.W
 return ASM_SE3L2_W;
32'b0111101110xxxxxxxxxxxxxxxx011110://BCLRI.D
 return ASM_BCLRI_D;
32'b01111000101xxxxxxxxxxxxxxx010011://DPADD_U.H
 return ASM_DPADD_U_H;
32'b010011xxxxxxxxxxxxxxxxxxxx011110://ALNV.PS
 return ASM_ALNV_PS;
32'b01000110110xxxxxxxxxxxxxxx000000://ADD.PS
 return ASM_ADD_PS;
32'b01111001100xxxxxxxxxxxxxxx000010://MULVI.B
 return ASM_MULVI_B;
32'b101111xxxxxxxxxxxxxxxxxxxxxxxxxx://CACHE
 return ASM_CACHE;
32'b01111001111xxxxxxxxxxxxxxx000010://MULVI.D
 return ASM_MULVI_D;
32'b0111101111010110xxxxxxxxxx001111://FEXUPR.W
 return ASM_FEXUPR_W;
32'b01111001101xxxxxxxxxxxxxxx000010://MULVI.H
 return ASM_MULVI_H;
32'b01111001011xxxxxxxxxxxxxxx011100://FCUN.D
 return ASM_FCUN_D;
32'b0111101111110xxxxxxxxxxxxx011110://BCLRI.B
 return ASM_BCLRI_B;
32'b0100011000100000xxxxxxxxxx001101://TRUNC.W.D
 return ASM_TRUNC_W_D;
32'b010011xxxxxxxxxx00000xxxxx000101://LUXC1
 return ASM_LUXC1;
32'b0111100011111110xxxxxxxxxx011010://CFCMSA
 return ASM_CFCMSA;
32'b0111101111010111xxxxxxxxxx001111://FEXUPR.D
 return ASM_FEXUPR_D;
32'b01111001110xxxxxxxxxxxxxxx000010://MULVI.W
 return ASM_MULVI_W;
32'b01111001111xxxxxxxxxxxxxxx010110://SLDR.D
 return ASM_SLDR_D;
32'b000000xxxxxxxxxx0000000000011011://DIVU
 return ASM_DIVU;
32'b0100011000000000xxxxxxxxxx001101://TRUNC.W.S
 return ASM_TRUNC_W_S;
32'b000001xxxxx10011xxxxxxxxxxxxxxxx://BGEZALL
 return ASM_BGEZALL;
32'b01111001001xxxxxxxxxxxxxxx010110://MVTGR_U.H
 return ASM_MVTGR_U_H;
32'b01111001001xxxxxxxxxxxxxxx000011://DPSUBI_S.H
 return ASM_DPSUBI_S_H;
32'b01111001101xxxxxxxxxxxxxxx010110://SLDR.H
 return ASM_SLDR_H;
32'b01111010000xxxxxxxxxxxxxxx011011://FMUL.W
 return ASM_FMUL_W;
32'b01111001110xxxxxxxxxxxxxxx000011://DPSUBI_U.W
 return ASM_DPSUBI_U_W;
32'b01111001101xxxxxxxxxxxxxxx001111://ST.V
 return ASM_ST_V;
32'b01111011111xxxxxxxxxxxxxxx010000://ASUB_U.D
 return ASM_ASUB_U_D;
32'b101011xxxxxxxxxxxxxxxxxxxxxxxxxx://SW
 return ASM_SW;
32'b01111001011xxxxxxxxxxxxxxx000011://DPSUBI_S.D
 return ASM_DPSUBI_S_D;
32'b01000110110xxxxxxxxxxxxxxx101101://PLU.PS
 return ASM_PLU_PS;
32'b101001xxxxxxxxxxxxxxxxxxxxxxxxxx://SH
 return ASM_SH;
32'b01111010001xxxxxxxxxxxxxxx011011://FMUL.D
 return ASM_FMUL_D;
32'b001101xxxxxxxxxxxxxxxxxxxxxxxxxx://ORI
 return ASM_ORI;
32'b111000xxxxxxxxxxxxxxxxxxxxxxxxxx://SC
 return ASM_SC;
32'b101000xxxxxxxxxxxxxxxxxxxxxxxxxx://SB
 return ASM_SB;
32'b110001xxxxxxxxxxxxxxxxxxxxxxxxxx://LWC1
 return ASM_LWC1;
32'b01111001010xxxxxxxxxxxxxxx000011://DPSUBI_S.W
 return ASM_DPSUBI_S_W;
32'b01111011001xxxxxxxxxxxxxxx010100://CLE_S.H
 return ASM_CLE_S_H;
32'b011110001010xxxxxxxxxxxxxx011010://MVTG_S.H
 return ASM_MVTG_S_H;
32'b01111000000xxxxxxxxxxxxxxx000101://SE3R0.B
 return ASM_SE3R0_B;
32'b01111000100xxxxxxxxxxxxxxx011010://MVTG_S.B
 return ASM_MVTG_S_B;
32'b01111000001110xxxxxxxxxxxx011010://SLD.D
 return ASM_SLD_D;
32'b01111011010xxxxxxxxxxxxxxx010100://CLE_S.W
 return ASM_CLE_S_W;
32'b01111001000xxxxxxxxxxxxxxx000001://SUBSSI_U.B
 return ASM_SUBSSI_U_B;
32'b0100011000000000xxxxxxxxxx001011://FLOOR.L.S
 return ASM_FLOOR_L_S;
32'b01000110001xxxxxxxxxxxxxxx010010://MOVZ.D
 return ASM_MOVZ_D;
32'b01111000010xxxxxxxxxxxxxxx000101://SE3R0.W
 return ASM_SE3R0_W;
32'b01000110001xxxxxxxxxxxxxxx000011://DIV.D
 return ASM_DIV_D;
32'b000001xxxxx11111xxxxxxxxxxxxxxxx://SYNCI
 return ASM_SYNCI;
32'b01111011011xxxxxxxxxxxxxxx010100://CLE_S.D
 return ASM_CLE_S_D;
32'b0100011000100000xxxxxxxxxx001011://FLOOR.L.D
 return ASM_FLOOR_L_D;
32'b0111100010110xxxxxxxxxxxxx011010://MVTG_S.W
 return ASM_MVTG_S_W;
32'b01111011000xxxxxxxxxxxxxxx010100://CLE_S.B
 return ASM_CLE_S_B;
32'b0111101111000100xxxxxxxxxx001111://FLOG2.W
 return ASM_FLOG2_W;
32'b01111001111xxxxxxxxxxxxxxx010001://MAX_A.D
 return ASM_MAX_A_D;
32'b100000xxxxxxxxxxxxxxxxxxxxxxxxxx://LB
 return ASM_LB;
32'b01111011011xxxxxxxxxxxxxxx010000://ASUB_S.D
 return ASM_ASUB_S_D;
32'b110000xxxxxxxxxxxxxxxxxxxxxxxxxx://LL
 return ASM_LL;
32'b010011xxxxxxxxxxxxxxx00000001000://SWXC1
 return ASM_SWXC1;
32'b100001xxxxxxxxxxxxxxxxxxxxxxxxxx://LH
 return ASM_LH;
32'b01111001001xxxxxxxxxxxxxxx000001://SUBSSI_U.H
 return ASM_SUBSSI_U_H;
32'b100011xxxxxxxxxxxxxxxxxxxxxxxxxx://LW
 return ASM_LW;
32'b0111100111110xxxxxxxxxxxxx011110://SRAI.B
 return ASM_SRAI_B;
32'b010011xxxxxxxxxx00000xxxxx000000://LWXC1
 return ASM_LWXC1;
32'b01111001111xxxxxxxxxxxxxxx000000://ADDSI_S.D
 return ASM_ADDSI_S_D;
32'b01111001010xxxxxxxxxxxxxxx011100://FCUN.W
 return ASM_FCUN_W;
32'b0100011011000000xxxxxxxxxx000101://ABS.PS
 return ASM_ABS_PS;
32'b01111001100xxxxxxxxxxxxxxx001111://LDX.V
 return ASM_LDX_V;
32'b01111001011xxxxxxxxxxxxxxx010000://ADDS_A.D
 return ASM_ADDS_A_D;
32'b01111001000xxxxxxxxxxxxxxx010000://ADDS_A.B
 return ASM_ADDS_A_B;
32'b01111000111xxxxxxxxxxxxxxx000010://AVEI_S.D
 return ASM_AVEI_S_D;
32'b000001xxxxx00001xxxxxxxxxxxxxxxx://BGEZ
 return ASM_BGEZ;
32'b01111010010xxxxxxxxxxxxxxx000101://SE3L0.W
 return ASM_SE3L0_W;
32'b01111001001xxxxxxxxxxxxxxx010000://ADDS_A.H
 return ASM_ADDS_A_H;
32'b01111001011xxxxxxxxxxxxxxx000001://SUBSSI_U.D
 return ASM_SUBSSI_U_D;
32'b01111001010xxxxxxxxxxxxxxx010000://ADDS_A.W
 return ASM_ADDS_A_W;
32'b01111010001xxxxxxxxxxxxxxx000101://SE3L0.H
 return ASM_SE3L0_H;
32'b01111001110xxxxxxxxxxxxxxx011110://SRAI.W
 return ASM_SRAI_W;
32'b01111001xxxxxxxxxxxxxxxxxx001011://BMZI.B
 return ASM_BMZI_B;
32'b01111001000xxxxxxxxxxxxxxx010001://SUBSS_U.B
 return ASM_SUBSS_U_B;
32'b01111010000xxxxxxxxxxxxxxx000101://SE3L0.B
 return ASM_SE3L0_B;
32'b01111000100xxxxxxxxxxxxxxx010110://MVTGR_S.B
 return ASM_MVTGR_S_B;
32'b0111101110001100xxxxxxxxxx001111://NLZC.B
 return ASM_NLZC_B;
32'b01111001111xxxxxxxxxxxxxxx010000://ADDS_S.D
 return ASM_ADDS_S_D;
32'b01111001100xxxxxxxxxxxxxxx010000://ADDS_S.B
 return ASM_ADDS_S_B;
32'b011110011110xxxxxxxxxxxxxx011110://SRAI.H
 return ASM_SRAI_H;
32'b01111011010xxxxxxxxxxxxxxx000001://MINI_A.W
 return ASM_MINI_A_W;
32'b010011xxxxxxxxxxxxxxxxxxxx101110://MSUB.PS
 return ASM_MSUB_PS;
32'b01111001101xxxxxxxxxxxxxxx010000://ADDS_S.H
 return ASM_ADDS_S_H;
32'b01111001110xxxxxxxxxxxxxxx010000://ADDS_S.W
 return ASM_ADDS_S_W;
32'b01111010100xxxxxxxxxxxxxxx000111://S3IL1.B
 return ASM_S3IL1_B;
32'b01111011001xxxxxxxxxxxxxxx000001://MINI_A.H
 return ASM_MINI_A_H;
32'b01111011011xxxxxxxxxxxxxxx000001://MINI_A.D
 return ASM_MINI_A_D;
32'b01111011000xxxxxxxxxxxxxxx000001://MINI_A.B
 return ASM_MINI_A_B;
32'b0111101110000111xxxxxxxxxx001111://PCNT.D
 return ASM_PCNT_D;
32'b00000000001xxxxxxxxxxxxxxx000010://ROTR
 return ASM_ROTR;
32'b01111011000xxxxxxxxxxxxxxx000111://S3IL2.B
 return ASM_S3IL2_B;
32'b01111000101xxxxxxxxxxxxxxx010001://SUBS_U.H
 return ASM_SUBS_U_H;
32'b01111000111xxxxxxxxxxxxxxx000001://SUBSI_U.D
 return ASM_SUBSI_U_D;
32'b01000010000000000000000000011111://DERET
 return ASM_DERET;
32'b01111000100xxxxxxxxxxxxxxx010001://SUBS_U.B
 return ASM_SUBS_U_B;
32'b0111101111000011xxxxxxxxxx001111://FRINT.D
 return ASM_FRINT_D;
32'b01111000100xxxxxxxxxxxxxxx000001://SUBSI_U.B
 return ASM_SUBSI_U_B;
32'b01111001010xxxxxxxxxxxxxxx010110://MVTGR_U.W
 return ASM_MVTGR_U_W;
32'b0111101110000101xxxxxxxxxx001111://PCNT.H
 return ASM_PCNT_H;
32'b01111000110xxxxxxxxxxxxxxx010001://SUBS_U.W
 return ASM_SUBS_U_W;
32'b01111000110xxxxxxxxxxxxxxx000001://SUBSI_U.W
 return ASM_SUBSI_U_W;
32'b0111101111000010xxxxxxxxxx001111://FRINT.W
 return ASM_FRINT_W;
32'b01000010000000000000000000000001://TLBR
 return ASM_TLBR;
32'b01000010000000000000000000001000://TLBP
 return ASM_TLBP;
32'b000111xxxxx00000xxxxxxxxxxxxxxxx://BGTZ
 return ASM_BGTZ;
32'b100100xxxxxxxxxxxxxxxxxxxxxxxxxx://LBU
 return ASM_LBU;
32'b000000xxxxxxxxxxxxxxxxxxxx001100://SYSCALL
 return ASM_SYSCALL;
32'b0111100010111110xxxxxxxxxx011010://CTCMSA
 return ASM_CTCMSA;
32'b01111001010xxxxxxxxxxxxxxx010011://DPSUB_S.W
 return ASM_DPSUB_S_W;
32'b01111000010xxxxxxxxxxxxxxx010001://SUBS_S.W
 return ASM_SUBS_S_W;
32'b0111100110xxxxxxxxxxxxxxxx011110://SRAI.D
 return ASM_SRAI_D;
32'b01111010000xxxxxxxxxxxxxxx000111://S3IL0.B
 return ASM_S3IL0_B;
32'b01111001001xxxxxxxxxxxxxxx010011://DPSUB_S.H
 return ASM_DPSUB_S_H;
32'b01111000000xxxxxxxxxxxxxxx010001://SUBS_S.B
 return ASM_SUBS_S_B;
32'b01111000011xxxxxxxxxxxxxxx010001://SUBS_S.D
 return ASM_SUBS_S_D;
32'b01111001011xxxxxxxxxxxxxxx010011://DPSUB_S.D
 return ASM_DPSUB_S_D;
32'b01111001010xxxxxxxxxxxxxxx000101://SE3R2.W
 return ASM_SE3R2_W;
32'b01111001000xxxxxxxxxxxxxxx011100://FCLE.W
 return ASM_FCLE_W;
32'b011110000110xxxxxxxxxxxxxx011010://MOVE.H
 return ASM_MOVE_H;
32'b01111000011110xxxxxxxxxxxx011010://MOVE.D
 return ASM_MOVE_D;
32'b01111000010xxxxxxxxxxxxxxx011010://MOVE.B
 return ASM_MOVE_B;
32'b010011xxxxxxxxxxxxxxx00000001111://PREFX
 return ASM_PREFX;
32'b000011xxxxxxxxxxxxxxxxxxxxxxxxxx://JAL
 return ASM_JAL;
32'b01111001110xxxxxxxxxxxxxxx010010://MULV.W
 return ASM_MULV_W;
32'b01111001000xxxxxxxxxxxxxxx000101://SE3R2.B
 return ASM_SE3R2_B;
32'b0111100001110xxxxxxxxxxxxx011010://MOVE.W
 return ASM_MOVE_W;
32'b0111100001111110xxxxxxxxxx011010://MOVE.V
 return ASM_MOVE_V;
32'b01111001001xxxxxxxxxxxxxxx000101://SE3R2.H
 return ASM_SE3R2_H;
32'b0100011000000000xxxxxxxxxx000100://SQRT.S
 return ASM_SQRT_S;
32'b0111101110001101xxxxxxxxxx001111://NLZC.H
 return ASM_NLZC_H;
32'b000001xxxxx01110xxxxxxxxxxxxxxxx://TNEI
 return ASM_TNEI;
32'b01000101000xxx10xxxxxxxxxxxxxxxx://BC1FL
 return ASM_BC1FL;
32'b01111010101xxxxxxxxxxxxxxx010100://CLT_S.H
 return ASM_CLT_S_H;
32'b000001xxxxx01010xxxxxxxxxxxxxxxx://TLTI
 return ASM_TLTI;
32'b01111010110xxxxxxxxxxxxxxx000010://MSUBVI.W
 return ASM_MSUBVI_W;
32'b01111001000xxxxxxxxxxxxxxx000010://AVEI_U.B
 return ASM_AVEI_U_B;
32'b01111010100xxxxxxxxxxxxxxx010100://CLT_S.B
 return ASM_CLT_S_B;
32'b01111000001xxxxxxxxxxxxxxx010101://CLE_U.H
 return ASM_CLE_U_H;
32'b01111010111xxxxxxxxxxxxxxx010100://CLT_S.D
 return ASM_CLT_S_D;
32'b01111001001xxxxxxxxxxxxxxx000010://AVEI_U.H
 return ASM_AVEI_U_H;
32'b01111010111xxxxxxxxxxxxxxx000010://MSUBVI.D
 return ASM_MSUBVI_D;
32'b01111000100xxxxxxxxxxxxxxx001111://BMNZ.V
 return ASM_BMNZ_V;
32'b01111001010xxxxxxxxxxxxxxx000010://AVEI_U.W
 return ASM_AVEI_U_W;
32'b01111000010xxxxxxxxxxxxxxx010101://CLE_U.W
 return ASM_CLE_U_W;
32'b01111010100xxxxxxxxxxxxxxx000010://MSUBVI.B
 return ASM_MSUBVI_B;
32'b00111100000xxxxxxxxxxxxxxxxxxxxx://LUI
 return ASM_LUI;
32'b000000xxxxxxxxxxxxxxx00000100110://XOR
 return ASM_XOR;
32'b01111010101xxxxxxxxxxxxxxx000010://MSUBVI.H
 return ASM_MSUBVI_H;
32'b011100xxxxxxxxxx0000000000000100://MSUB
 return ASM_MSUB;
32'b000001xxxxx01011xxxxxxxxxxxxxxxx://TLTIU
 return ASM_TLTIU;
32'b011100xxxxxxxxxx0000000000000000://MADD
 return ASM_MADD;
32'b01111001010xxxxxxxxxxxxxxx000000://ADDSI_A.W
 return ASM_ADDSI_A_W;
32'b01111011110xxxxxxxxxxxxxxx010100://CLT_U.W
 return ASM_CLT_U_W;
32'b01111001000xxxxxxxxxxxxxxx000000://ADDSI_A.B
 return ASM_ADDSI_A_B;
32'b01111010010xxxxxxxxxxxxxxx000010://MADDVI.W
 return ASM_MADDVI_W;
32'b01111001011xxxxxxxxxxxxxxx000000://ADDSI_A.D
 return ASM_ADDSI_A_D;
32'b01111000000xxxxxxxxxxxxxxx010101://CLE_U.B
 return ASM_CLE_U_B;
32'b01111001001xxxxxxxxxxxxxxx000000://ADDSI_A.H
 return ASM_ADDSI_A_H;
32'b01111011100xxxxxxxxxxxxxxx010100://CLT_U.B
 return ASM_CLT_U_B;
32'b01111010011xxxxxxxxxxxxxxx000000://ADDSI_U.D
 return ASM_ADDSI_U_D;
32'b000000xxxxxxxxxxxxxxx00000100011://SUBU
 return ASM_SUBU;
32'b01000001011xxxxx0110000000100000://EI
 return ASM_EI;
32'b000001xxxxx00010xxxxxxxxxxxxxxxx://BLTZL
 return ASM_BLTZL;
32'b0111101110001010xxxxxxxxxx001111://NLOC.W
 return ASM_NLOC_W;
32'b000001xxxxx10010xxxxxxxxxxxxxxxx://BLTZALL
 return ASM_BLTZALL;
32'b01111010001xxxxxxxxxxxxxxx000000://ADDSI_U.H
 return ASM_ADDSI_U_H;
32'b01111010010xxxxxxxxxxxxxxx000000://ADDSI_U.W
 return ASM_ADDSI_U_W;
32'b0111101110001000xxxxxxxxxx001111://NLOC.B
 return ASM_NLOC_B;
32'b0111101110001011xxxxxxxxxx001111://NLOC.D
 return ASM_NLOC_D;
32'b01111000110xxxxxxxxxxxxxxx010110://MVTGR_S.W
 return ASM_MVTGR_S_W;
32'b0111100000xxxxxxxxxxxxxxxx011110://SAT_S.D
 return ASM_SAT_S_D;
32'b0111101110001001xxxxxxxxxx001111://NLOC.H
 return ASM_NLOC_H;
32'b01111001101xxxxxxxxxxxxxxx010011://DPSUB_U.H
 return ASM_DPSUB_U_H;
32'b010011xxxxxxxxxxxxxxx00000001001://SDXC1
 return ASM_SDXC1;
32'b01111011100xxxxxxxxxxxxxxx010000://ASUB_U.B
 return ASM_ASUB_U_B;
32'b01111011010xxxxxxxxxxxxxxx010000://ASUB_S.W
 return ASM_ASUB_S_W;
32'b01111000110xxxxxxxxxxxxxxx000010://AVEI_S.W
 return ASM_AVEI_S_W;
32'b01111000110xxxxxxxxxxxxxxx011010://MVTG_U.B
 return ASM_MVTG_U_B;
32'b01111001110xxxxxxxxxxxxxxx000000://ADDSI_S.W
 return ASM_ADDSI_S_W;
32'b01111001101xxxxxxxxxxxxxxx010010://MULV.H
 return ASM_MULV_H;
32'b01111011101xxxxxxxxxxxxxxx010000://ASUB_U.H
 return ASM_ASUB_U_H;
32'b011110001110xxxxxxxxxxxxxx011010://MVTG_U.H
 return ASM_MVTG_U_H;
32'b01111000100xxxxxxxxxxxxxxx000010://AVEI_S.B
 return ASM_AVEI_S_B;
32'b01111001100xxxxxxxxxxxxxxx000000://ADDSI_S.B
 return ASM_ADDSI_S_B;
32'b0111100011110xxxxxxxxxxxxx011010://MVTG_U.W
 return ASM_MVTG_U_W;
32'b01111011110xxxxxxxxxxxxxxx010000://ASUB_U.W
 return ASM_ASUB_U_W;
32'b01000110110xxxxxxxxxxxxxxx010011://MOVN.PS
 return ASM_MOVN_PS;
32'b01111011000xxxxxxxxxxxxxxx010000://ASUB_S.B
 return ASM_ASUB_S_B;
32'b01111001101xxxxxxxxxxxxxxx000000://ADDSI_S.H
 return ASM_ADDSI_S_H;
32'b01111000101xxxxxxxxxxxxxxx000010://AVEI_S.H
 return ASM_AVEI_S_H;
32'b01111011001xxxxxxxxxxxxxxx010000://ASUB_S.H
 return ASM_ASUB_S_H;
32'b01111000001xxxxxxxxxxxxxxx001111://OR.V
 return ASM_OR_V;
32'b0111101111010101xxxxxxxxxx001111://FEXUPL.D
 return ASM_FEXUPL_D;
32'b0100011000000000xxxxxxxxxx001001://TRUNC.L.S
 return ASM_TRUNC_L_S;
32'b01111011010xxxxxxxxxxxxxxx010011://SRL.W
 return ASM_SRL_W;
32'b0111101110001110xxxxxxxxxx001111://NLZC.W
 return ASM_NLZC_W;
32'b000001xxxxx10001xxxxxxxxxxxxxxxx://BGEZAL
 return ASM_BGEZAL;
32'b0100011000100000xxxxxxxxxx001001://TRUNC.L.D
 return ASM_TRUNC_L_D;
32'b01111011001xxxxxxxxxxxxxxx010011://SRL.H
 return ASM_SRL_H;
32'b011100xxxxxxxxxxxxxxx00000000010://MUL
 return ASM_MUL;
32'b01111011011xxxxxxxxxxxxxxx010011://SRL.D
 return ASM_SRL_D;
32'b01111011000xxxxxxxxxxxxxxx010011://SRL.B
 return ASM_SRL_B;
32'b0111101110001111xxxxxxxxxx001111://NLZC.D
 return ASM_NLZC_D;
32'b01111000011xxxxxxxxxxxxxxx011100://FMIN_A.D
 return ASM_FMIN_A_D;
32'b01111000001xxxxxxxxxxxxxxx011011://MUL_Q.W
 return ASM_MUL_Q_W;
32'b01111100000xxxxxxxxxx10000100000://SEB
 return ASM_SEB;
32'b01111100000xxxxxxxxxx11000100000://SEH
 return ASM_SEH;
32'b01111000011xxxxxxxxxxxxxxx010000://ADDV.D
 return ASM_ADDV_D;
32'b011100xxxxxxxxxxxxxxx00000100001://CLO
 return ASM_CLO;
32'b01111010110xxxxxxxxxxxxxxx011011://FMADD.W
 return ASM_FMADD_W;
32'b01111000000xxxxxxxxxxxxxxx010000://ADDV.B
 return ASM_ADDV_B;
32'b010011xxxxxxxxxxxxxxxxxxxx111110://NMSUB.PS
 return ASM_NMSUB_PS;
32'b01111000001xxxxxxxxxxxxxxx010000://ADDV.H
 return ASM_ADDV_H;
32'b01111001001xxxxxxxxxxxxxxx000111://S3IR2.H
 return ASM_S3IR2_H;
32'b01111000010xxxxxxxxxxxxxxx010000://ADDV.W
 return ASM_ADDV_W;
32'b01111010111xxxxxxxxxxxxxxx011011://FMADD.D
 return ASM_FMADD_D;
32'b011100xxxxxxxxxxxxxxx00000100000://CLZ
 return ASM_CLZ;
32'b01111010011xxxxxxxxxxxxxxx000010://MADDVI.D
 return ASM_MADDVI_D;
32'b01111011011xxxxxxxxxxxxxxx011011://FEXP2.D
 return ASM_FEXP2_D;
32'b01000010000000000000000000100000://WAIT
 return ASM_WAIT;
32'b01111011000xxxxxxxxxxxxxxx000011://CLEI_S.B
 return ASM_CLEI_S_B;
32'b01111000010xxxxxxxxxxxxxxx000100://CLEI_U.W
 return ASM_CLEI_U_W;
32'b01111011011xxxxxxxxxxxxxxx000011://CLEI_S.D
 return ASM_CLEI_S_D;
32'b01111011001xxxxxxxxxxxxxxx000011://CLEI_S.H
 return ASM_CLEI_S_H;
32'b000000xxxxxxxxxxxxxxxxxxxx001101://BREAK
 return ASM_BREAK;
32'b01111000011xxxxxxxxxxxxxxx000100://CLEI_U.D
 return ASM_CLEI_U_D;
32'b0111101111010100xxxxxxxxxx001111://FEXUPL.W
 return ASM_FEXUPL_W;
32'b01111011010xxxxxxxxxxxxxxx000011://CLEI_S.W
 return ASM_CLEI_S_W;
32'b01111000000xxxxxxxxxxxxxxx000100://CLEI_U.B
 return ASM_CLEI_U_B;
32'b01111010010xxxxxxxxxxxxxxx011100://FTQ.H
 return ASM_FTQ_H;
32'b01111000010xxxxxxxxxxxxxxx011100://FMIN_A.W
 return ASM_FMIN_A_W;
32'b01111000001xxxxxxxxxxxxxxx000100://CLEI_U.H
 return ASM_CLEI_U_H;
32'b01111010000xxxxxxxxxxxxxxx000001://MAXI_S.B
 return ASM_MAXI_S_B;
32'b01111010110xxxxxxxxxxxxxxx000001://MAXI_U.W
 return ASM_MAXI_U_W;
32'b101010xxxxxxxxxxxxxxxxxxxxxxxxxx://SWL
 return ASM_SWL;
32'b01000001011xxxxx0110000000000000://DI
 return ASM_DI;
32'b01111010001xxxxxxxxxxxxxxx000001://MAXI_S.H
 return ASM_MAXI_S_H;
32'b000001xxxxx10000xxxxxxxxxxxxxxxx://BLTZAL
 return ASM_BLTZAL;
32'b01111010111xxxxxxxxxxxxxxx000001://MAXI_U.D
 return ASM_MAXI_U_D;
32'b01111010010xxxxxxxxxxxxxxx000001://MAXI_S.W
 return ASM_MAXI_S_W;
32'b01111010100xxxxxxxxxxxxxxx000001://MAXI_U.B
 return ASM_MAXI_U_B;
32'b101110xxxxxxxxxxxxxxxxxxxxxxxxxx://SWR
 return ASM_SWR;
32'b01111010101xxxxxxxxxxxxxxx000001://MAXI_U.H
 return ASM_MAXI_U_H;
32'b000000xxxxxxxxxx0000000000011000://MULT
 return ASM_MULT;
32'b01111001100xxxxxxxxxxxxxxx000001://MAXI_A.B
 return ASM_MAXI_A_B;
32'b01111001111xxxxxxxxxxxxxxx000001://MAXI_A.D
 return ASM_MAXI_A_D;
32'b01000110000xxxxxxxxxxxxxxx100110://CVT.PS.S
 return ASM_CVT_PS_S;
32'b01111011101xxxxxxxxxxxxxxx011011://FMAX.D
 return ASM_FMAX_D;
32'b01000101000xxx01xxxxxxxxxxxxxxxx://BC1T
 return ASM_BC1T;
32'b000000xxxxxxxxxxxxxxxxxxxx110010://TLT
 return ASM_TLT;
32'b01111001110xxxxxxxxxxxxxxx000001://MAXI_A.W
 return ASM_MAXI_A_W;
32'b000000xxxxxxxxxxxxxxxxxxxx110000://TGE
 return ASM_TGE;
32'b01000101000xxx00xxxxxxxxxxxxxxxx://BC1F
 return ASM_BC1F;
32'b0111101101110xxxxxxxxxxxxx011110://BINSRI.B
 return ASM_BINSRI_B;
32'b01111010010xxxxxxxxxxxxxxx010101://ILVL.W
 return ASM_ILVL_W;
32'b01111010101xxxxxxxxxxxxxxx010101://ILVR.H
 return ASM_ILVR_H;
32'b0111101100xxxxxxxxxxxxxxxx011110://BINSRI.D
 return ASM_BINSRI_D;
32'b000000xxxxxxxxxxxxxxx00000101010://SLT
 return ASM_SLT;
32'b01111010100xxxxxxxxxxxxxxx010101://ILVR.B
 return ASM_ILVR_B;
32'b011110110110xxxxxxxxxxxxxx011110://BINSRI.H
 return ASM_BINSRI_H;
32'b01111010111xxxxxxxxxxxxxxx010101://ILVR.D
 return ASM_ILVR_D;
32'b00000000000xxxxxxxxxxxxxxx000000://SLL
 return ASM_SLL;
32'b01111010011xxxxxxxxxxxxxxx010101://ILVL.D
 return ASM_ILVL_D;
32'b01111011010xxxxxxxxxxxxxxx011110://BINSRI.W
 return ASM_BINSRI_W;
32'b01111000001xxxxxxxxxxxxxxx010001://SUBS_S.H
 return ASM_SUBS_S_H;
32'b01111010000xxxxxxxxxxxxxxx010101://ILVL.B
 return ASM_ILVL_B;
32'b01111010110xxxxxxxxxxxxxxx010101://ILVR.W
 return ASM_ILVR_W;
32'b01111010001xxxxxxxxxxxxxxx010101://ILVL.H
 return ASM_ILVL_H;
32'b01000110001xxxxxxxxxxxxxxx000010://MUL.D
 return ASM_MUL_D;
32'b01111010011xxxxxxxxxxxxxxx011011://FDIV.D
 return ASM_FDIV_D;
32'b01000100111xxxxxxxxxx00000000000://MTHC1
 return ASM_MTHC1;
32'b01111001101xxxxxxxxxxxxxxx010101://PCKOD.H
 return ASM_PCKOD_H;
32'b01111001111xxxxxxxxxxxxxxx010101://PCKOD.D
 return ASM_PCKOD_D;
32'b01111010xxxxxxxxxxxxxxxxxx001011://BSELI.B
 return ASM_BSELI_B;
32'b010011xxxxxxxxxxxxxxxxxxxx101001://MSUB.D
 return ASM_MSUB_D;
32'b01111010010xxxxxxxxxxxxxxx011011://FDIV.W
 return ASM_FDIV_W;
32'b01000110000xxxxxxxxxxxxxxx000010://MUL.S
 return ASM_MUL_S;
32'b01111001110xxxxxxxxxxxxxxx010101://PCKOD.W
 return ASM_PCKOD_W;
32'b010011xxxxxxxxxxxxxxxxxxxx101000://MSUB.S
 return ASM_MSUB_S;
32'b01111010101xxxxxxxxxxxxxxx000111://S3IL1.H
 return ASM_S3IL1_H;
32'b0100011000100000xxxxxxxxxx001110://CEIL.W.D
 return ASM_CEIL_W_D;
32'b000000xxxxx0000000000xxxxx001000://JR
 return ASM_JR;
32'b011111xxxxxxxxxxxxxxxxxxxx000000://EXT
 return ASM_EXT;
32'b0100011000000000xxxxxxxxxx001110://CEIL.W.S
 return ASM_CEIL_W_S;
32'b01111000101xxxxxxxxxxxxxxx000001://SUBSI_U.H
 return ASM_SUBSI_U_H;
32'b0100011000100000xxxxxxxxxx010101://RECIP.D
 return ASM_RECIP_D;
32'b0100011011000000xxxxxxxxxx000110://MOV.PS
 return ASM_MOV_PS;
32'b01111011110xxxxxxxxxxxxxxx011110://BCLRI.W
 return ASM_BCLRI_W;
32'b01111001110xxxxxxxxxxxxxxx010110://SLDR.W
 return ASM_SLDR_W;
32'b0100011000000000xxxxxxxxxx001000://ROUND.L.S
 return ASM_ROUND_L_S;
32'b01111000101xxxxxxxxxxxxxxx010000://ADD_A.H
 return ASM_ADD_A_H;
32'b0100011000100000xxxxxxxxxx001000://ROUND.L.D
 return ASM_ROUND_L_D;
32'b01111000110xxxxxxxxxxxxxxx010000://ADD_A.W
 return ASM_ADD_A_W;
32'b0100011000000000xxxxxxxxxx010101://RECIP.S
 return ASM_RECIP_S;
32'b01000000100xxxxxxxxxx00000000xxx://MTC0
 return ASM_MTC0;
32'b01000100100xxxxxxxxxx00000000000://MTC1
 return ASM_MTC1;
32'b011110111110xxxxxxxxxxxxxx011110://BCLRI.H
 return ASM_BCLRI_H;
32'b01111000110xxxxxxxxxxxxxxx011011://MADDR_Q.H
 return ASM_MADDR_Q_H;
32'b01111000111xxxxxxxxxxxxxxx010001://SUBS_U.D
 return ASM_SUBS_U_D;
32'b01111000101xxxxxxxxxxxxxxx010110://MVTGR_S.H
 return ASM_MVTGR_S_H;
32'b01111010110xxxxxxxxxxxxxxx000111://S3IL1.W
 return ASM_S3IL1_W;
32'b01000110110xxxxxxxxxxxxxxx101110://PUL.PS
 return ASM_PUL_PS;
32'b01111000011xxxxxxxxxxxxxxx001111://XOR.V
 return ASM_XOR_V;
32'b01111000010xxxxxxxxxxxxxxx011110://SAT_S.W
 return ASM_SAT_S_W;
32'b01111001100xxxxxxxxxxxxxxx010010://MULV.B
 return ASM_MULV_B;
32'b000101xxxxxxxxxxxxxxxxxxxxxxxxxx://BNE
 return ASM_BNE;
32'b000000xxxxxxxxxxxxxxx00000100001://ADDU
 return ASM_ADDU;
32'b01111010011xxxxxxxxxxxxxxx011100://FTQ.W
 return ASM_FTQ_W;
32'b001010xxxxxxxxxxxxxxxxxxxxxxxxxx://SLTI
 return ASM_SLTI;
32'b0100011000100000xxxxxxxxxx000110://MOV.D
 return ASM_MOV_D;
32'b01111011001xxxxxxxxxxxxxxx010101://ILVEV.H
 return ASM_ILVEV_H;
32'b000000xxxxxxxxxxxxxxx00000101011://SLTU
 return ASM_SLTU;
32'b0100011000000000xxxxxxxxxx000110://MOV.S
 return ASM_MOV_S;
32'b001000xxxxxxxxxxxxxxxxxxxxxxxxxx://ADDI
 return ASM_ADDI;
32'b01111000100xxxxxxxxxxxxxxx000000://ADDI_A.B
 return ASM_ADDI_A_B;
32'b01111010001xxxxxxxxxxxxxxx000010://MADDVI.H
 return ASM_MADDVI_H;
32'b01111000111xxxxxxxxxxxxxxx000000://ADDI_A.D
 return ASM_ADDI_A_D;
32'b01111010100xxxxxxxxxxxxxxx000101://SE3L1.B
 return ASM_SE3L1_B;
32'b0111101111001000xxxxxxxxxx001111://FTINT_S.W
 return ASM_FTINT_S_W;
32'b01111000101xxxxxxxxxxxxxxx000000://ADDI_A.H
 return ASM_ADDI_A_H;
32'b01111010000xxxxxxxxxxxxxxx000010://MADDVI.B
 return ASM_MADDVI_B;
32'b00000000000000000000000000001111://SYNC
 return ASM_SYNC;
32'b01111001100xxxxxxxxxxxxxxx011100://FCEQU.W
 return ASM_FCEQU_W;
32'b01111011100xxxxxxxxxxxxxxx011011://FMAX.W
 return ASM_FMAX_W;
32'b01111010110xxxxxxxxxxxxxxx000101://SE3L1.W
 return ASM_SE3L1_W;
32'b01111001xxxxxxxxxxxxxxxxxx001010://ORI.B
 return ASM_ORI_B;
32'b0111101111001001xxxxxxxxxx001111://FTINT_S.D
 return ASM_FTINT_S_D;
32'b01111000110xxxxxxxxxxxxxxx000000://ADDI_A.W
 return ASM_ADDI_A_W;
32'b01111000001xxxxxxxxxxxxxxx010011://DPADD_S.H
 return ASM_DPADD_S_H;
32'b0111100000110xxxxxxxxxxxxx011010://SLD.W
 return ASM_SLD_W;
32'b110101xxxxxxxxxxxxxxxxxxxxxxxxxx://LDC1
 return ASM_LDC1;
32'b01111001101xxxxxxxxxxxxxxx011100://FCEQU.D
 return ASM_FCEQU_D;
32'b01111001xxxxxxxxxxxxxxxxxx001100://SHF.W
 return ASM_SHF_W;
32'b01111000011xxxxxxxxxxxxxxx010011://DPADD_S.D
 return ASM_DPADD_S_D;
32'b01111011xxxxxxxxxxxxxxxxxx001011://SHF.B
 return ASM_SHF_B;
32'b01111010010xxxxxxxxxxxxxxx000011://CEQI.W
 return ASM_CEQI_W;
32'b01111000xxxxxxxxxxxxxxxxxx001100://SHF.H
 return ASM_SHF_H;
32'b01111010001xxxxxxxxxxxxxxx010001://MAX_S.H
 return ASM_MAX_S_H;
32'b01111010010xxxxxxxxxxxxxxx010100://CEQ.W
 return ASM_CEQ_W;
32'b0111101111000110xxxxxxxxxx001111://FCLASS.W
 return ASM_FCLASS_W;
32'b0100011000100000xxxxxxxxxx100101://CVT.L.D
 return ASM_CVT_L_D;
32'b01111001111xxxxxxxxxxxxxxx011011://FSUB.D
 return ASM_FSUB_D;
32'b010011xxxxxxxxxxxxxxxxxxxx110000://NMADD.S
 return ASM_NMADD_S;
32'b0100011000000000xxxxxxxxxx100101://CVT.L.S
 return ASM_CVT_L_S;
32'b01111010011xxxxxxxxxxxxxxx010100://CEQ.D
 return ASM_CEQ_D;
32'b01000110110xxxxxxxxxxxxxxx101100://PLL.PS
 return ASM_PLL_PS;
32'b01111010000xxxxxxxxxxxxxxx010100://CEQ.B
 return ASM_CEQ_B;
32'b01111010011xxxxxxxxxxxxxxx010001://MAX_S.D
 return ASM_MAX_S_D;
32'b01111000010xxxxxxxxxxxxxxx001111://NOR.V
 return ASM_NOR_V;
32'b01111001110xxxxxxxxxxxxxxx011011://FSUB.W
 return ASM_FSUB_W;
32'b010011xxxxxxxxxxxxxxxxxxxx110001://NMADD.D
 return ASM_NMADD_D;
32'b01111010001xxxxxxxxxxxxxxx010100://CEQ.H
 return ASM_CEQ_H;
32'b0111101111001010xxxxxxxxxx001111://FFINT_S.W
 return ASM_FFINT_S_W;
32'b000000xxxxxxxxxxxxxxx00000100100://AND
 return ASM_AND;
32'b0111101111001101xxxxxxxxxx001111://FTINT_U.D
 return ASM_FTINT_U_D;
32'b01111001000xxxxxxxxxxxxxxx000111://S3IR2.B
 return ASM_S3IR2_B;
32'b01111011000xxxxxxxxxxxxxxx011011://FMSUB.W
 return ASM_FMSUB_W;
32'b01111010100xxxxxxxxxxxxxxx011100://FEXDO.H
 return ASM_FEXDO_H;
32'b01111010110xxxxxxxxxxxxxxx000011://CLTI_S.W
 return ASM_CLTI_S_W;
32'b0111101111001100xxxxxxxxxx001111://FTINT_U.W
 return ASM_FTINT_U_W;
32'b01111010101xxxxxxxxxxxxxxx011100://FEXDO.W
 return ASM_FEXDO_W;
32'b01111011001xxxxxxxxxxxxxxx011011://FMSUB.D
 return ASM_FMSUB_D;
32'b01111011101xxxxxxxxxxxxxxx010001://MIN_S.H
 return ASM_MIN_S_H;
32'b01111010000xxxxxxxxxxxxxxx000011://CEQI.B
 return ASM_CEQI_B;
32'b01111010000xxxxxxxxxxxxxxx010010://MADDV.B
 return ASM_MADDV_B;
32'b01111011110xxxxxxxxxxxxxxx010101://ILVOD.W
 return ASM_ILVOD_W;
32'b01111010011xxxxxxxxxxxxxxx010010://MADDV.D
 return ASM_MADDV_D;
32'b01111010001xxxxxxxxxxxxxxx010010://MADDV.H
 return ASM_MADDV_H;
32'b01111011010xxxxxxxxxxxxxxx010001://MIN_A.W
 return ASM_MIN_A_W;
32'b01111011100xxxxxxxxxxxxxxx010101://ILVOD.B
 return ASM_ILVOD_B;
32'b01111010010xxxxxxxxxxxxxxx010010://MADDV.W
 return ASM_MADDV_W;
32'b01111011111xxxxxxxxxxxxxxx010101://ILVOD.D
 return ASM_ILVOD_D;
32'b01111011101xxxxxxxxxxxxxxx010101://ILVOD.H
 return ASM_ILVOD_H;
32'b000000xxxxxxxxxx0000000000011001://MULTU
 return ASM_MULTU;
32'b01111010111xxxxxxxxxxxxxxx000000://SUBVI.D
 return ASM_SUBVI_D;
32'b011100xxxxxxxxxx0000000000000001://MADDU
 return ASM_MADDU;
32'b01111000010xxxxxxxxxxxxxxx010011://DPADD_S.W
 return ASM_DPADD_S_W;
32'b001100xxxxxxxxxxxxxxxxxxxxxxxxxx://ANDI
 return ASM_ANDI;
32'b01111010011xxxxxxxxxxxxxxx000011://CEQI.D
 return ASM_CEQI_D;
32'b01111010100xxxxxxxxxxxxxxx000000://SUBVI.B
 return ASM_SUBVI_B;
32'b01111000101xxxxxxxxxxxxxxx011100://FCEQ.D
 return ASM_FCEQ_D;
32'b01111010011xxxxxxxxxxxxxxx000001://MAXI_S.D
 return ASM_MAXI_S_D;
32'b01111010101xxxxxxxxxxxxxxx000000://SUBVI.H
 return ASM_SUBVI_H;
32'b01111001010xxxxxxxxxxxxxxx001110://LDI.W
 return ASM_LDI_W;
32'b01111000xxxxxxxxxxxxxxxxxx001010://ANDI.B
 return ASM_ANDI_B;
32'b01111001001xxxxxxxxxxxxxxx001110://LDI.H
 return ASM_LDI_H;
32'b01111010110xxxxxxxxxxxxxxx000000://SUBVI.W
 return ASM_SUBVI_W;
32'b01111000100xxxxxxxxxxxxxxx011100://FCEQ.W
 return ASM_FCEQ_W;
32'b01111001000xxxxxxxxxxxxxxx001110://LDI.B
 return ASM_LDI_B;
32'b01111001011xxxxxxxxxxxxxxx001110://LDI.D
 return ASM_LDI_D;
32'b00000000000xxxxxxxxxxxxxxx000011://SRA
 return ASM_SRA;
32'b01111011010xxxxxxxxxxxxxxx010010://DOTP_S.W
 return ASM_DOTP_S_W;
32'b0111101111001011xxxxxxxxxx001111://FFINT_S.D
 return ASM_FFINT_S_D;
32'b01111001110xxxxxxxxxxxxxxx001111://STX.V
 return ASM_STX_V;
32'b01111000001xxxxxxxxxxxxxxx011100://FMIN.D
 return ASM_FMIN_D;
32'b01111010100xxxxxxxxxxxxxxx010000://SUBV.B
 return ASM_SUBV_B;
32'b00000000000xxxxxxxxxxxxxxx000010://SRL
 return ASM_SRL;
32'b01111000000xxxxxxxxxxxxxxx000111://S3IR0.B
 return ASM_S3IR0_B;
32'b01111011011xxxxxxxxxxxxxxx010010://DOTP_S.D
 return ASM_DOTP_S_D;
32'b001110xxxxxxxxxxxxxxxxxxxxxxxxxx://XORI
 return ASM_XORI;
32'b01111011001xxxxxxxxxxxxxxx010010://DOTP_S.H
 return ASM_DOTP_S_H;
32'b01111000000xxxxxxxxxxxxxxx011011://MUL_Q.H
 return ASM_MUL_Q_H;
32'b01111011111xxxxxxxxxxxxxxx010010://DOTP_U.D
 return ASM_DOTP_U_D;
32'b000000xxxxx00000xxxxxxxxxx001001://JALR
 return ASM_JALR;
32'b01000010000000000000000000011000://ERET
 return ASM_ERET;
32'b01111011011xxxxxxxxxxxxxxx010001://MIN_A.D
 return ASM_MIN_A_D;
32'b01111000010xxxxxxxxxxxxxxx010110://MOVER.W
 return ASM_MOVER_W;
32'b110011xxxxxxxxxxxxxxxxxxxxxxxxxx://PREF
 return ASM_PREF;
32'b01111011101xxxxxxxxxxxxxxx010010://DOTP_U.H
 return ASM_DOTP_U_H;
32'b01111010101xxxxxxxxxxxxxxx010000://SUBV.H
 return ASM_SUBV_H;
32'b01111011110xxxxxxxxxxxxxxx010010://DOTP_U.W
 return ASM_DOTP_U_W;
32'b000000xxxxxxxxxxxxxxx00000000110://SRLV
 return ASM_SRLV;
32'b01111000001xxxxxxxxxxxxxxx010110://MOVER.H
 return ASM_MOVER_H;
32'b01111000011xxxxxxxxxxxxxxx010110://MOVER.D
 return ASM_MOVER_D;
32'b01111000000xxxxxxxxxxxxxxx010110://MOVER.B
 return ASM_MOVER_B;
32'b01000100010xxxxxxxxxx00000000000://CFC1
 return ASM_CFC1;
32'b011110001110xxxxxxxxxxxxxx011111://BNEGI.H
 return ASM_BNEGI_H;
32'b01111001110xxxxxxxxxxxxxxx010001://MAX_A.W
 return ASM_MAX_A_W;
32'b0111100011110xxxxxxxxxxxxx011111://BNEGI.B
 return ASM_BNEGI_B;
32'b01111001110xxxxxxxxxxxxxxx010100://BNEG.W
 return ASM_BNEG_W;
32'b0111100010xxxxxxxxxxxxxxxx011111://BNEGI.D
 return ASM_BNEGI_D;
32'b01000110000xxxxxxxxxxxxxxx010010://MOVZ.S
 return ASM_MOVZ_S;
32'b01111001101xxxxxxxxxxxxxxx010100://BNEG.H
 return ASM_BNEG_H;
32'b0100011011000000xxxxxxxxxx000111://NEG.PS
 return ASM_NEG_PS;
32'b01111001101xxxxxxxxxxxxxxx010001://MAX_A.H
 return ASM_MAX_A_H;
32'b01111001111xxxxxxxxxxxxxxx010100://BNEG.D
 return ASM_BNEG_D;
32'b000000xxxxxxxxxx0000000000011010://DIV
 return ASM_DIV;
32'b011111xxxxxxxxxxxxxxxxxxxx000100://INS
 return ASM_INS;
32'b01111001100xxxxxxxxxxxxxxx010001://MAX_A.B
 return ASM_MAX_A_B;
32'b01111001100xxxxxxxxxxxxxxx010100://BNEG.B
 return ASM_BNEG_B;
32'b01111000110xxxxxxxxxxxxxxx011111://BNEGI.W
 return ASM_BNEGI_W;
32'b01000110001xxxxxxxxxxxxxxx010011://MOVN.D
 return ASM_MOVN_D;
32'b01111001010xxxxxxxxxxxxxxx000111://S3IR2.W
 return ASM_S3IR2_W;
32'b010110xxxxx00000xxxxxxxxxxxxxxxx://BLEZL
 return ASM_BLEZL;
32'b0111100100110xxxxxxxxxxxxx011010://MVFGE.W
 return ASM_MVFGE_W;
32'b01111000110xxxxxxxxxxxxxxx011100://FCLT.W
 return ASM_FCLT_W;
32'b01111011001xxxxxxxxxxxxxxx010001://MIN_A.H
 return ASM_MIN_A_H;
32'b010011xxxxxxxxxxxxxxxxxxxx110110://NMADD.PS
 return ASM_NMADD_PS;
32'b01000110000xxxxxxxxxxxxxxx010011://MOVN.S
 return ASM_MOVN_S;
32'b011110010010xxxxxxxxxxxxxx011010://MVFGE.H
 return ASM_MVFGE_H;
32'b01111001011xxxxxxxxxxxxxxx001111://LD.V
 return ASM_LD_V;
32'b01000010000000000000000000000110://TLBWR
 return ASM_TLBWR;
32'b01111000001xxxxxxxxxxxxxxx000101://SE3R0.H
 return ASM_SE3R0_H;
32'b01111000111xxxxxxxxxxxxxxx011100://FCLT.D
 return ASM_FCLT_D;
32'b01111001000xxxxxxxxxxxxxxx011010://MVFGE.B
 return ASM_MVFGE_B;
32'b01000110000xxxxxxxxxxxxxxx000000://ADD.S
 return ASM_ADD_S;
32'b01111010001xxxxxxxxxxxxxxx011100://FCLEU.D
 return ASM_FCLEU_D;
32'b01000110000xxx00xxxxxxxxxx010001://MOVF.S
 return ASM_MOVF_S;
32'b01000000000xxxxxxxxxx00000000xxx://MFC0
 return ASM_MFC0;
32'b01000100000xxxxxxxxxx00000000000://MFC1
 return ASM_MFC1;
32'b01000110001xxxxxxxxxxxxxxx000000://ADD.D
 return ASM_ADD_D;
32'b01111010000xxxxxxxxxxxxxxx011100://FCLEU.W
 return ASM_FCLEU_W;
32'b01000110001xxx00xxxxxxxxxx010001://MOVF.D
 return ASM_MOVF_D;
32'b01111001001xxxxxxxxxxxxxxx011100://FCLE.D
 return ASM_FCLE_D;
32'b01111001010xxxxxxxxxxxxxxx011110://SHLI.W
 return ASM_SHLI_W;
32'b0100011000000000xxxxxxxxxx100001://CVT.D.S
 return ASM_CVT_D_S;
32'b01111010010xxxxxxxxxxxxxxx010110://MVFGER.W
 return ASM_MVFGER_W;
32'b0100011010000000xxxxxxxxxx100001://CVT.D.W
 return ASM_CVT_D_W;
32'b0111100101110xxxxxxxxxxxxx011110://SHLI.B
 return ASM_SHLI_B;
32'b01111010001xxxxxxxxxxxxxxx010110://MVFGER.H
 return ASM_MVFGER_H;
32'b0111100100xxxxxxxxxxxxxxxx011110://SHLI.D
 return ASM_SHLI_D;
32'b0100011010100000xxxxxxxxxx100001://CVT.D.L
 return ASM_CVT_D_L;
32'b01111001101xxxxxxxxxxxxxxx000001://MAXI_A.H
 return ASM_MAXI_A_H;
32'b011110010110xxxxxxxxxxxxxx011110://SHLI.H
 return ASM_SHLI_H;
32'b01111010000xxxxxxxxxxxxxxx010110://MVFGER.B
 return ASM_MVFGER_B;
32'b000000xxxxxxxxxxxxxxx00000001011://MOVN
 return ASM_MOVN;
32'b0111101110000010xxxxxxxxxx001111://MVFG.W
 return ASM_MVFG_W;
32'b000000xxxxxxxx00xxxxx00000000001://MOVF
 return ASM_MOVF;
32'b01000110000xxxxxxxxxxxxx0011xxxx://C.cond.S
 return ASM_C_cond_S;
32'b01111000100xxxxxxxxxxxxxxx000101://SE3R1.B
 return ASM_SE3R1_B;
32'b000000xxxxxxxxxxxxxxx00000001010://MOVZ
 return ASM_MOVZ;
32'b0111101110000000xxxxxxxxxx001111://MVFG.B
 return ASM_MVFG_B;
32'b01111000100xxxxxxxxxxxxxxx011011://MADD_Q.H
 return ASM_MADD_Q_H;
32'b000000xxxxxxxx01xxxxx00000000001://MOVT
 return ASM_MOVT;
32'b01111000xxxxxxxxxxxxxxxxxx001011://BMNZI.B
 return ASM_BMNZI_B;
32'b0111101110000001xxxxxxxxxx001111://MVFG.H
 return ASM_MVFG_H;
32'b010101xxxxxxxxxxxxxxxxxxxxxxxxxx://BNEL
 return ASM_BNEL;
32'b0111101011110xxxxxxxxxxxxx011110://BINSLI.B
 return ASM_BINSLI_B;
32'b0111101010xxxxxxxxxxxxxxxx011110://BINSLI.D
 return ASM_BINSLI_D;
32'b011110101110xxxxxxxxxxxxxx011110://BINSLI.H
 return ASM_BINSLI_H;
32'b0100011000000000xxxxxxxxxx010110://RSQRT.S
 return ASM_RSQRT_S;
32'b010011xxxxxxxxxx00000xxxxx000001://LDXC1
 return ASM_LDXC1;
32'b01111010110xxxxxxxxxxxxxxx011110://BINSLI.W
 return ASM_BINSLI_W;
32'b01111000101xxxxxxxxxxxxxxx000101://SE3R1.H
 return ASM_SE3R1_H;
32'b0100011000100000xxxxxxxxxx010110://RSQRT.D
 return ASM_RSQRT_D;
32'b01111010010xxxxxxxxxxxxxxx010011://SHL.W
 return ASM_SHL_W;
32'b01111010001xxxxxxxxxxxxxxx010011://SHL.H
 return ASM_SHL_H;
32'b01111010011xxxxxxxxxxxxxxx010011://SHL.D
 return ASM_SHL_D;
32'b01111000001xxxxxxxxxxxxxxx000011://DPADDI_S.H
 return ASM_DPADDI_S_H;
32'b01111010000xxxxxxxxxxxxxxx010011://SHL.B
 return ASM_SHL_B;
32'b0100011000100000xxxxxxxxxx001111://FLOOR.W.D
 return ASM_FLOOR_W_D;
32'b01111000110xxxxxxxxxxxxxxx000011://DPADDI_U.W
 return ASM_DPADDI_U_W;
32'b01111000000xxxxxxxxxxxxxxx000001://SUBSI_S.B
 return ASM_SUBSI_S_B;
32'b01111000011xxxxxxxxxxxxxxx000011://DPADDI_S.D
 return ASM_DPADDI_S_D;
32'b01111000010xxxxxxxxxxxxxxx001110://BNZ.W
 return ASM_BNZ_W;
32'b01111000111xxxxxxxxxxxxxxx001111://BNZ.V
 return ASM_BNZ_V;
32'b0100011011000000xxxxxxxxxx101000://CVT.S.PL
 return ASM_CVT_S_PL;
32'b01111011010xxxxxxxxxxxxxxx000111://S3IL2.W
 return ASM_S3IL2_W;
32'b01111011001xxxxxxxxxxxxxxx000111://S3IL2.H
 return ASM_S3IL2_H;
32'b0100011000000000xxxxxxxxxx001111://FLOOR.W.S
 return ASM_FLOOR_W_S;
32'b01111000001xxxxxxxxxxxxxxx001110://BNZ.H
 return ASM_BNZ_H;
32'b01111000111xxxxxxxxxxxxxxx000011://DPADDI_U.D
 return ASM_DPADDI_U_D;
32'b0100011011000000xxxxxxxxxx100000://CVT.S.PU
 return ASM_CVT_S_PU;
32'b01111000011xxxxxxxxxxxxxxx001110://BNZ.D
 return ASM_BNZ_D;
32'b01111000101xxxxxxxxxxxxxxx000011://DPADDI_U.H
 return ASM_DPADDI_U_H;
32'b01111000010xxxxxxxxxxxxxxx000011://DPADDI_S.W
 return ASM_DPADDI_S_W;
32'b000000xxxxxxxxxxxxxxx00000100101://OR
 return ASM_OR;
32'b01111000000xxxxxxxxxxxxxxx001110://BNZ.B
 return ASM_BNZ_B;
32'b000000xxxxxxxxxxxxxxx00000000100://SLLV
 return ASM_SLLV;
32'b01111000110xxxxxxxxxxxxxxx000101://SE3R1.W
 return ASM_SE3R1_W;
32'b01111000010xxxxxxxxxxxxxxx000001://SUBSI_S.W
 return ASM_SUBSI_S_W;
32'b01000110000xxx01xxxxxxxxxx010001://MOVT.S
 return ASM_MOVT_S;
32'b0000000000000000xxxxx00000010000://MFHI
 return ASM_MFHI;
32'b01111010101xxxxxxxxxxxxxxx010011://SRA.H
 return ASM_SRA_H;
32'b010111xxxxx00000xxxxxxxxxxxxxxxx://BGTZL
 return ASM_BGTZL;
32'b010011xxxxxxxxxxxxxxxxxxxx100110://MADD.PS
 return ASM_MADD_PS;
32'b000000xxxxxxxxxxxxxxx00001000110://ROTRV
 return ASM_ROTRV;
32'b01111000101xxxxxxxxxxxxxxx001110://BZ.H
 return ASM_BZ_H;
32'b01111000001xxxxxxxxxxxxxxx000001://SUBSI_S.H
 return ASM_SUBSI_S_H;
32'b01111000100xxxxxxxxxxxxxxx001110://BZ.B
 return ASM_BZ_B;
32'b01111000110xxxxxxxxxxxxxxx010100://BCLR.W
 return ASM_BCLR_W;
32'b01111000111xxxxxxxxxxxxxxx001110://BZ.D
 return ASM_BZ_D;
32'b01111000101xxxxxxxxxxxxxxx010100://BCLR.H
 return ASM_BCLR_H;
32'b01111000100xxxxxxxxxxxxxxx010100://BCLR.B
 return ASM_BCLR_B;
32'b01111001000xxxxxxxxxxxxxxx001111://BZ.V
 return ASM_BZ_V;
32'b01111000110xxxxxxxxxxxxxxx001110://BZ.W
 return ASM_BZ_W;
32'b01111000111xxxxxxxxxxxxxxx010100://BCLR.D
 return ASM_BCLR_D;
32'b0111101111001111xxxxxxxxxx001111://FFINT_U.D
 return ASM_FFINT_U_D;
32'b01111000010xxxxxxxxxxxxxxx011111://BSETI.W
 return ASM_BSETI_W;
32'b01111011110xxxxxxxxxxxxxxx000011://CLTI_U.W
 return ASM_CLTI_U_W;
32'b01111011010xxxxxxxxxxxxxxx010101://ILVEV.W
 return ASM_ILVEV_W;
32'b01111011100xxxxxxxxxxxxxxx000011://CLTI_U.B
 return ASM_CLTI_U_B;
32'b0111100000xxxxxxxxxxxxxxxx011111://BSETI.D
 return ASM_BSETI_D;
32'b0111101111001110xxxxxxxxxx001111://FFINT_U.W
 return ASM_FFINT_U_W;
32'b0111100001110xxxxxxxxxxxxx011111://BSETI.B
 return ASM_BSETI_B;
32'b01111010100xxxxxxxxxxxxxxx000011://CLTI_S.B
 return ASM_CLTI_S_B;
32'b01111011111xxxxxxxxxxxxxxx000011://CLTI_U.D
 return ASM_CLTI_U_D;
32'b01111000000xxxxxxxxxxxxxxx011100://FMIN.W
 return ASM_FMIN_W;
32'b01111011101xxxxxxxxxxxxxxx000011://CLTI_U.H
 return ASM_CLTI_U_H;
32'b01111011011xxxxxxxxxxxxxxx010101://ILVEV.D
 return ASM_ILVEV_D;
32'b01111011000xxxxxxxxxxxxxxx010101://ILVEV.B
 return ASM_ILVEV_B;
32'b011110000110xxxxxxxxxxxxxx011111://BSETI.H
 return ASM_BSETI_H;
32'b01111010100xxxxxxxxxxxxxxx010001://MAX_U.B
 return ASM_MAX_U_B;
32'b010011xxxxxxxxxxxxxxxxxxxx111001://NMSUB.D
 return ASM_NMSUB_D;
32'b0111101111000101xxxxxxxxxx001111://FLOG2.D
 return ASM_FLOG2_D;
32'b01111000011xxxxxxxxxxxxxxx011011://MULR_Q.W
 return ASM_MULR_Q_W;
32'b01111010111xxxxxxxxxxxxxxx010001://MAX_U.D
 return ASM_MAX_U_D;
32'b111101xxxxxxxxxxxxxxxxxxxxxxxxxx://SDC1
 return ASM_SDC1;
32'b01111010101xxxxxxxxxxxxxxx010001://MAX_U.H
 return ASM_MAX_U_H;
32'b01111001010xxxxxxxxxxxxxxx010001://SUBSS_U.W
 return ASM_SUBSS_U_W;
32'b111001xxxxxxxxxxxxxxxxxxxxxxxxxx://SWC1
 return ASM_SWC1;
32'b01000110110xxx01xxxxxxxxxx010001://MOVT.PS
 return ASM_MOVT_PS;
32'b01111001001xxxxxxxxxxxxxxx010001://SUBSS_U.H
 return ASM_SUBSS_U_H;
32'b01111010110xxxxxxxxxxxxxxx010001://MAX_U.W
 return ASM_MAX_U_W;
32'b010011xxxxxxxxxxxxxxxxxxxx111000://NMSUB.S
 return ASM_NMSUB_S;
32'b01000110000xxxxxxxxxxxxxxx000011://DIV.S
 return ASM_DIV_S;
32'b01111000010xxxxxxxxxxxxxxx011011://MULR_Q.H
 return ASM_MULR_Q_H;
32'b01111001011xxxxxxxxxxxxxxx010001://SUBSS_U.D
 return ASM_SUBSS_U_D;
32'b01000110110xxxxxxxxxxxxx0011xxxx://C.cond.PS
 return ASM_C_cond_PS;
32'b01111010001xxxxxxxxxxxxxxx000111://S3IL0.H
 return ASM_S3IL0_H;
32'b000000xxxxxxxxxxxxxxx00000100010://SUB
 return ASM_SUB;
32'b01111001011xxxxxxxxxxxxxxx000010://AVEI_U.D
 return ASM_AVEI_U_D;
32'b01111011110xxxxxxxxxxxxxxx000010://DOTPI_U.W
 return ASM_DOTPI_U_W;
32'b01111010111xxxxxxxxxxxxxxx010011://SRA.D
 return ASM_SRA_D;
32'b01111010100xxxxxxxxxxxxxxx010011://SRA.B
 return ASM_SRA_B;
32'b000110xxxxx00000xxxxxxxxxxxxxxxx://BLEZ
 return ASM_BLEZ;
32'b000001xxxxx00011xxxxxxxxxxxxxxxx://BGEZL
 return ASM_BGEZL;
32'b01111011101xxxxxxxxxxxxxxx000010://DOTPI_U.H
 return ASM_DOTPI_U_H;
32'b01111010110xxxxxxxxxxxxxxx010011://SRA.W
 return ASM_SRA_W;
32'b01111011111xxxxxxxxxxxxxxx000010://DOTPI_U.D
 return ASM_DOTPI_U_D;
32'b01111010010xxxxxxxxxxxxxxx000111://S3IL0.W
 return ASM_S3IL0_W;
32'b0100011000100000xxxxxxxxxx000101://ABS.D
 return ASM_ABS_D;
32'b01111001001xxxxxxxxxxxxxxx011011://MSUB_Q.W
 return ASM_MSUB_Q_W;
32'b01111011011xxxxxxxxxxxxxxx000010://DOTPI_S.D
 return ASM_DOTPI_S_D;
32'b01111011001xxxxxxxxxxxxxxx000010://DOTPI_S.H
 return ASM_DOTPI_S_H;
32'b01111000011xxxxxxxxxxxxxxx010101://CLE_U.D
 return ASM_CLE_U_D;
32'b01111011010xxxxxxxxxxxxxxx000010://DOTPI_S.W
 return ASM_DOTPI_S_W;
32'b01111011100xxxxxxxxxxxxxxx010001://MIN_S.B
 return ASM_MIN_S_B;
32'b01111010xxxxxxxxxxxxxxxxxx001010://NORI.B
 return ASM_NORI_B;
32'b000000xxxxxxxxxxxxxxxxxxxx110100://TEQ
 return ASM_TEQ;
32'b01111001000xxxxxxxxxxxxxxx011011://MSUB_Q.H
 return ASM_MSUB_Q_H;
32'b01111011010xxxxxxxxxxxxxxx000000://ASUBI_S.W
 return ASM_ASUBI_S_W;
32'b010011xxxxxxxxxxxxxxxxxxxx100000://MADD.S
 return ASM_MADD_S;
32'b0100011000000000xxxxxxxxxx000111://NEG.S
 return ASM_NEG_S;
32'b01000110110xxxxxxxxxxxxxxx010010://MOVZ.PS
 return ASM_MOVZ_PS;
32'b000010xxxxxxxxxxxxxxxxxxxxxxxxxx://J
 return ASM_J;
32'b0100011000100000xxxxxxxxxx000111://NEG.D
 return ASM_NEG_D;
32'b000000xxxxxxxxxxxxxxx00000100000://ADD
 return ASM_ADD;
32'b01111011011xxxxxxxxxxxxxxx000000://ASUBI_S.D
 return ASM_ASUBI_S_D;
32'b01111011000xxxxxxxxxxxxxxx000000://ASUBI_S.B
 return ASM_ASUBI_S_B;
32'b010011xxxxxxxxxxxxxxxxxxxx100001://MADD.D
 return ASM_MADD_D;
32'b01111010101xxxxxxxxxxxxxxx010010://MSUBV.H
 return ASM_MSUBV_H;
32'b01111011001xxxxxxxxxxxxxxx000000://ASUBI_S.H
 return ASM_ASUBI_S_H;
32'b01111011110xxxxxxxxxxxxxxx010001://MIN_S.W
 return ASM_MIN_S_W;
32'b01000110000xxxxxxxxxxxxxxx000001://SUB.S
 return ASM_SUB_S;
32'b001011xxxxxxxxxxxxxxxxxxxxxxxxxx://SLTIU
 return ASM_SLTIU;
32'b01111010010xxxxxxxxxxxxxxx010001://MAX_S.W
 return ASM_MAX_S_W;
32'b01111001111xxxxxxxxxxxxxxx011100://FCLTU.D
 return ASM_FCLTU_D;
32'b011110000010xxxxxxxxxxxxxx011010://SLD.H
 return ASM_SLD_H;
32'b01111011111xxxxxxxxxxxxxxx010001://MIN_S.D
 return ASM_MIN_S_D;
32'b01000110001xxxxxxxxxxxxxxx000001://SUB.D
 return ASM_SUB_D;
32'b01000110110xxxxxxxxxxxxxxx000001://SUB.PS
 return ASM_SUB_PS;
32'b01111000000xxxxxxxxxxxxxxx011010://SLD.B
 return ASM_SLD_B;
32'b01111001110xxxxxxxxxxxxxxx011100://FCLTU.W
 return ASM_FCLTU_W;
32'b01111010000xxxxxxxxxxxxxxx010001://MAX_S.B
 return ASM_MAX_S_B;
32'b010100xxxxxxxxxxxxxxxxxxxxxxxxxx://BEQL
 return ASM_BEQL;
32'b01111011010xxxxxxxxxxxxxxx011011://FEXP2.W
 return ASM_FEXP2_W;
32'b0111101111000000xxxxxxxxxx001111://FSQRT.W
 return ASM_FSQRT_W;
32'b01000110110xxxxxxxxxxxxxxx000010://MUL.PS
 return ASM_MUL_PS;
32'b0000000000000000xxxxx00000010010://MFLO
 return ASM_MFLO;
32'b100110xxxxxxxxxxxxxxxxxxxxxxxxxx://LWR
 return ASM_LWR;
32'b01111001100xxxxxxxxxxxxxxx010101://PCKOD.B
 return ASM_PCKOD_B;
32'b01111010001xxxxxxxxxxxxxxx000011://CEQI.H
 return ASM_CEQI_H;
32'b0100011010000000xxxxxxxxxx100000://CVT.S.W
 return ASM_CVT_S_W;
32'b0111101111000001xxxxxxxxxx001111://FSQRT.D
 return ASM_FSQRT_D;
32'b000000xxxxxxxxxxxxxxx00000000111://SRAV
 return ASM_SRAV;
32'b01111000010xxxxxxxxxxxxxxx000111://S3IR0.W
 return ASM_S3IR0_W;
32'b0100011010100000xxxxxxxxxx100000://CVT.S.L
 return ASM_CVT_S_L;
32'b100010xxxxxxxxxxxxxxxxxxxxxxxxxx://LWL
 return ASM_LWL;
32'b01111011000xxxxxxxxxxxxxxx010001://MIN_A.B
 return ASM_MIN_A_B;
32'b0100011000100000xxxxxxxxxx100000://CVT.S.D
 return ASM_CVT_S_D;
32'b000000xxxxxxxxxxxxxxxxxxxx110011://TLTU
 return ASM_TLTU;
32'b01000110001xxx01xxxxxxxxxx010001://MOVT.D
 return ASM_MOVT_D;
32'b01111010110xxxxxxxxxxxxxxx010100://CLT_S.W
 return ASM_CLT_S_W;
32'b001001xxxxxxxxxxxxxxxxxxxxxxxxxx://ADDIU
 return ASM_ADDIU;
32'b01111010101xxxxxxxxxxxxxxx000011://CLTI_S.H
 return ASM_CLTI_S_H;
32'b01111000101xxxxxxxxxxxxxxx010010://AVE_S.H
 return ASM_AVE_S_H;
32'b01111000000xxxxxxxxxxxxxxx001111://AND.V
 return ASM_AND_V;
32'b01111010111xxxxxxxxxxxxxxx000011://CLTI_S.D
 return ASM_CLTI_S_D;
32'b01111000111xxxxxxxxxxxxxxx010010://AVE_S.D
 return ASM_AVE_S_D;
32'b0100011000000000xxxxxxxxxx000101://ABS.S
 return ASM_ABS_S;
32'b01111011110xxxxxxxxxxxxxxx000000://ASUBI_U.W
 return ASM_ASUBI_U_W;
32'b01111000100xxxxxxxxxxxxxxx010010://AVE_S.B
 return ASM_AVE_S_B;
32'b000000xxxxxxxxxxxxxxxxxxxx110110://TNE
 return ASM_TNE;
32'b01111011101xxxxxxxxxxxxxxx000000://ASUBI_U.H
 return ASM_ASUBI_U_H;
32'b01111000110xxxxxxxxxxxxxxx010010://AVE_S.W
 return ASM_AVE_S_W;
32'b01111011100xxxxxxxxxxxxxxx000000://ASUBI_U.B
 return ASM_ASUBI_U_B;
32'b01111011111xxxxxxxxxxxxxxx000000://ASUBI_U.D
 return ASM_ASUBI_U_D;
32'b01111010110xxxxxxxxxxxxxxx010010://MSUBV.W
 return ASM_MSUBV_W;
32'b01111001010xxxxxxxxxxxxxxx010010://AVE_U.W
 return ASM_AVE_U_W;
32'b01111000111xxxxxxxxxxxxxxx011011://MADDR_Q.W
 return ASM_MADDR_Q_W;
32'b01111010111xxxxxxxxxxxxxxx010010://MSUBV.D
 return ASM_MSUBV_D;
32'b01111010101xxxxxxxxxxxxxxx000101://SE3L1.H
 return ASM_SE3L1_H;
32'b01111010100xxxxxxxxxxxxxxx010010://MSUBV.B
 return ASM_MSUBV_B;
32'b01111001000xxxxxxxxxxxxxxx010010://AVE_U.B
 return ASM_AVE_U_B;
32'b01111001011xxxxxxxxxxxxxxx010010://AVE_U.D
 return ASM_AVE_U_D;
32'b01111001001xxxxxxxxxxxxxxx010010://AVE_U.H
 return ASM_AVE_U_H;
32'b000000xxxxx000000000000000010001://MTHI
 return ASM_MTHI;
32'b01111001000xxxxxxxxxxxxxxx010110://MVTGR_U.B
 return ASM_MVTGR_U_B;
default:
 return ASM_RES;
endcase
end
endfunction

//============================================================
// asm function
//============================================================
task automatic fxu_sim_fdisplay;
input integer fp;
input [31:0]  insn;
begin
casex(insn)
32'b01111000001xxxxxxxxxxxxxxx000010://MINI_U.H
    begin
    $fdisplay(fp,"MINI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001001xxxxxxxxxxxxxxx010101://PCKEV.H
    begin
    $fdisplay(fp,"PCKEV.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011110xxxxxxxxxxxxxxx010011://BINSL.W
    begin
    $fdisplay(fp,"BINSL.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000100110xxxxxxxxxx00000000000://CTC1
    begin
    $fdisplay(fp,"CTC1: rt=%d, fs=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b01111011110xxxxxxxxxxxxxxx000001://MINI_S.W
    begin
    $fdisplay(fp,"MINI_S.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001000xxxxxxxxxxxxxxx010101://PCKEV.B
    begin
    $fdisplay(fp,"PCKEV.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx000001://SUBSSI_U.W
    begin
    $fdisplay(fp,"SUBSSI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000011xxxxxxxxxxxxxxx000010://MINI_U.D
    begin
    $fdisplay(fp,"MINI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011101xxxxxxxxxxxxxxx000001://MINI_S.H
    begin
    $fdisplay(fp,"MINI_S.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011101xxxxxxxxxxxxxxx010011://BINSL.H
    begin
    $fdisplay(fp,"BINSL.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011111xxxxxxxxxxxxxxx000001://MINI_S.D
    begin
    $fdisplay(fp,"MINI_S.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011111xxxxxxxxxxxxxxx010011://BINSL.D
    begin
    $fdisplay(fp,"BINSL.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx000010://MINI_U.W
    begin
    $fdisplay(fp,"MINI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011100xxxxxxxxxxxxxxx010011://BINSL.B
    begin
    $fdisplay(fp,"BINSL.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011110xxxxxxxxxxxxxxx011011://FMAX_A.W
    begin
    $fdisplay(fp,"FMAX_A.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx100100://CVT.W.D
    begin
    $fdisplay(fp,"CVT.W.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx010101://VSHF.D
    begin
    $fdisplay(fp,"VSHF.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000100xxxxxxxxxxxxxxx010101://VSHF.B
    begin
    $fdisplay(fp,"VSHF.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx011110://SAT_U.W
    begin
    $fdisplay(fp,"SAT_U.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01111000001xxxxxxxxxxxxxxx000111://S3IR0.H
    begin
    $fdisplay(fp,"S3IR0.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx010011://DPADD_U.W
    begin
    $fdisplay(fp,"DPADD_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000101xxxxxxxxxxxxxxx010101://VSHF.H
    begin
    $fdisplay(fp,"VSHF.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx010101://VSHF.W
    begin
    $fdisplay(fp,"VSHF.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxx00000001101://SUXC1
    begin
    $fdisplay(fp,"SUXC1: index=%d, base=%d, fs=%d " ,insn[20:16] ,insn[25:21] ,insn[15:11] );
    end
32'b01000100011xxxxxxxxxx00000000000://MFHC1
    begin
    $fdisplay(fp,"MFHC1: rt=%d, fs=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b0111100011110xxxxxxxxxxxxx011110://SAT_U.B
    begin
    $fdisplay(fp,"SAT_U.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b0111100010xxxxxxxxxxxxxxxx011110://SAT_U.D
    begin
    $fdisplay(fp,"SAT_U.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b0100011000000000xxxxxxxxxx100100://CVT.W.S
    begin
    $fdisplay(fp,"CVT.W.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx000010://MINI_U.B
    begin
    $fdisplay(fp,"MINI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b011110001110xxxxxxxxxxxxxx011110://SAT_U.H
    begin
    $fdisplay(fp,"SAT_U.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111001011xxxxxxxxxxxxxxx010101://PCKEV.D
    begin
    $fdisplay(fp,"PCKEV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx010011://DPADD_U.D
    begin
    $fdisplay(fp,"DPADD_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011101xxxxxxxxxxxxxxx010100://CLT_U.H
    begin
    $fdisplay(fp,"CLT_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101110000110xxxxxxxxxx001111://PCNT.W
    begin
    $fdisplay(fp,"PCNT.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx110001://TGEU
    begin
    $fdisplay(fp,"TGEU: rt=%d, code=%d, rs=%d " ,insn[20:16] ,insn[15: 6] ,insn[25:21] );
    end
32'b0100011000100000xxxxxxxxxx001100://ROUND.W.D
    begin
    $fdisplay(fp,"ROUND.W.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b000001xxxxx01000xxxxxxxxxxxxxxxx://TGEI
    begin
    $fdisplay(fp,"TGEI: immediate=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b100101xxxxxxxxxxxxxxxxxxxxxxxxxx://LHU
    begin
    $fdisplay(fp,"LHU: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b0111101110000100xxxxxxxxxx001111://PCNT.B
    begin
    $fdisplay(fp,"PCNT.B: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000101xxxxxxxxxxxxxxx001111://BMZ.V
    begin
    $fdisplay(fp,"BMZ.V: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000000000xxxxxxxxxx001100://ROUND.W.S
    begin
    $fdisplay(fp,"ROUND.W.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b011100xxxxxxxxxx0000000000000101://MSUBU
    begin
    $fdisplay(fp,"MSUBU: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b01111011111xxxxxxxxxxxxxxx010100://CLT_U.D
    begin
    $fdisplay(fp,"CLT_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000001xxxxx01100xxxxxxxxxxxxxxxx://TEQI
    begin
    $fdisplay(fp,"TEQI: immediate=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01000110110xxxxxxxxxxxxxxx101111://PUU.PS
    begin
    $fdisplay(fp,"PUU.PS: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001101xxxxxxxxxxxxxxx011011://FADD.D
    begin
    $fdisplay(fp,"FADD.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011xxxxxxxxxxxxxxxxxx001010://XORI.B
    begin
    $fdisplay(fp,"XORI.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011000100000xxxxxxxxxx001010://CEIL.L.D
    begin
    $fdisplay(fp,"CEIL.L.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx010010://MIN_U.W
    begin
    $fdisplay(fp,"MIN_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000001xxxxx01001xxxxxxxxxxxxxxxx://TGEIU
    begin
    $fdisplay(fp,"TGEIU: immediate=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111001111xxxxxxxxxxxxxxx010010://MULV.D
    begin
    $fdisplay(fp,"MULV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx010010://MIN_U.H
    begin
    $fdisplay(fp,"MIN_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx000100://SQRT.D
    begin
    $fdisplay(fp,"SQRT.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001100xxxxxxxxxxxxxxx011011://FADD.W
    begin
    $fdisplay(fp,"FADD.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011111xxxxxxxxxxxxxxx011011://FMAX_A.D
    begin
    $fdisplay(fp,"FMAX_A.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx011011://MSUBR_Q.H
    begin
    $fdisplay(fp,"MSUBR_Q.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx010010://MIN_U.B
    begin
    $fdisplay(fp,"MIN_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000000000xxxxxxxxxx001010://CEIL.L.S
    begin
    $fdisplay(fp,"CEIL.L.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000011xxxxxxxxxxxxxxx010010://MIN_U.D
    begin
    $fdisplay(fp,"MIN_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000001xxxxx00000xxxxxxxxxxxxxxxx://BLTZ
    begin
    $fdisplay(fp,"BLTZ: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010001xxxxxxxxxxxxxxx010000://ADDS_U.H
    begin
    $fdisplay(fp,"ADDS_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010000xxxxxxxxxxxxxxx010000://ADDS_U.B
    begin
    $fdisplay(fp,"ADDS_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001110xxxxxxxxxxxxxxx010011://DPSUB_U.W
    begin
    $fdisplay(fp,"DPSUB_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx010000://ADDS_U.D
    begin
    $fdisplay(fp,"ADDS_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000101000xxx11xxxxxxxxxxxxxxxx://BC1TL
    begin
    $fdisplay(fp,"BC1TL: cc=%d, offset=%d " ,insn[20:18] ,insn[15: 0] );
    end
32'b01111001010xxxxxxxxxxxxxxx010101://PCKEV.W
    begin
    $fdisplay(fp,"PCKEV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010000xxxxxxxxxxxxxxx000000://ADDSI_U.B
    begin
    $fdisplay(fp,"ADDSI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000100xxxxxxxxxxxxxxxxxxxxxxxxxx://BEQ
    begin
    $fdisplay(fp,"BEQ: rt=%d, offset=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010010xxxxxxxxxxxxxxx010000://ADDS_U.W
    begin
    $fdisplay(fp,"ADDS_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001011xxxxxxxxxxxxxxx011011://MSUBR_Q.W
    begin
    $fdisplay(fp,"MSUBR_Q.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111010010xxxxxxxxxx001111://FFQR.W
    begin
    $fdisplay(fp,"FFQR.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001100xxxxxxxxxxxxxxx010110://SLDR.B
    begin
    $fdisplay(fp,"SLDR.B: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101111010001xxxxxxxxxx001111://FFQL.D
    begin
    $fdisplay(fp,"FFQL.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101111010011xxxxxxxxxx001111://FFQR.D
    begin
    $fdisplay(fp,"FFQR.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011100xxxxxxxxxxxxxxx000001://MINI_S.B
    begin
    $fdisplay(fp,"MINI_S.B: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b0111101111010000xxxxxxxxxx001111://FFQL.W
    begin
    $fdisplay(fp,"FFQL.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01000110110xxx00xxxxxxxxxx010001://MOVF.PS
    begin
    $fdisplay(fp,"MOVF.PS: cc=%d, fs=%d, fd=%d " ,insn[20:18] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx010000://ADD_A.D
    begin
    $fdisplay(fp,"ADD_A.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx000000://ADDVI.W
    begin
    $fdisplay(fp,"ADDVI.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000110xxxxxxxxxxxxxxx000111://S3IR1.W
    begin
    $fdisplay(fp,"S3IR1.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110000110xxxxxxxxxxxxxx011110://SAT_S.H
    begin
    $fdisplay(fp,"SAT_S.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111000110xxxxxxxxxxxxxxx001111://BSEL.V
    begin
    $fdisplay(fp,"BSEL.V: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001101xxxxxxxxxxxxxxx000011://DPSUBI_U.H
    begin
    $fdisplay(fp,"DPSUBI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111100000xxxxxxxxxx00010100000://WSBH
    begin
    $fdisplay(fp,"WSBH: rt=%d, rd=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b0111100001110xxxxxxxxxxxxx011110://SAT_S.B
    begin
    $fdisplay(fp,"SAT_S.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b01111000000xxxxxxxxxxxxxxx000000://ADDVI.B
    begin
    $fdisplay(fp,"ADDVI.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000100xxxxxxxxxxxxxxx000111://S3IR1.B
    begin
    $fdisplay(fp,"S3IR1.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000011xxxxxxxxxxxxxxx000000://ADDVI.D
    begin
    $fdisplay(fp,"ADDVI.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101111000111xxxxxxxxxx001111://FCLASS.D
    begin
    $fdisplay(fp,"FCLASS.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000101xxxxxxxxxxxxxxx000111://S3IR1.H
    begin
    $fdisplay(fp,"S3IR1.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx000000://ADDVI.H
    begin
    $fdisplay(fp,"ADDVI.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b011110100110xxxxxxxxxxxxxx011110://SRLI.H
    begin
    $fdisplay(fp,"SRLI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111001111xxxxxxxxxxxxxxx000011://DPSUBI_U.D
    begin
    $fdisplay(fp,"DPSUBI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010111xxxxxxxxxxxxxxx010000://SUBV.D
    begin
    $fdisplay(fp,"SUBV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000100xxxxxxxxxxxxxxx010000://ADD_A.B
    begin
    $fdisplay(fp,"ADD_A.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001111xxxxxxxxxxxxxxx010011://DPSUB_U.D
    begin
    $fdisplay(fp,"DPSUB_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101001110xxxxxxxxxxxxx011110://SRLI.B
    begin
    $fdisplay(fp,"SRLI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b0111101000xxxxxxxxxxxxxxxx011110://SRLI.D
    begin
    $fdisplay(fp,"SRLI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b01000010000000000000000000000010://TLBWI
    $fdisplay(fp,"TLBWI");
32'b000000xxxxx000000000000000010011://MTLO
    begin
    $fdisplay(fp,"MTLO: rs=%d " ,insn[25:21] );
    end
32'b01111010110xxxxxxxxxxxxxxx010000://SUBV.W
    begin
    $fdisplay(fp,"SUBV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010010xxxxxxxxxxxxxxx011110://SRLI.W
    begin
    $fdisplay(fp,"SRLI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b000000xxxxxxxxxxxxxxx00000100111://NOR
    begin
    $fdisplay(fp,"NOR: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111011001xxxxxxxxxxxxxxx000101://SE3L2.H
    begin
    $fdisplay(fp,"SE3L2.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx010100://BINSR.H
    begin
    $fdisplay(fp,"BINSR.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001011xxxxxxxxxxxxxxx010100://BSET.D
    begin
    $fdisplay(fp,"BSET.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx010100://BSET.B
    begin
    $fdisplay(fp,"BSET.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011000xxxxxxxxxxxxxxx000101://SE3L2.B
    begin
    $fdisplay(fp,"SE3L2.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx010100://BINSR.B
    begin
    $fdisplay(fp,"BINSR.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000011xxxxxxxxxxxxxxx010100://BINSR.D
    begin
    $fdisplay(fp,"BINSR.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx010100://BSET.H
    begin
    $fdisplay(fp,"BSET.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx010100://BSET.W
    begin
    $fdisplay(fp,"BSET.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110001xxxxxxxxxxxxx0011xxxx://C.cond.D
    begin
    $fdisplay(fp,"C.cond.D: cc=%d, cond=%d, fs=%d, ft=%d " ,insn[10: 8] ,insn[ 3: 0] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000011xxxxxxxxxxxxxxx000001://SUBSI_S.D
    begin
    $fdisplay(fp,"SUBSI_S.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000101xxxxxxxxxxxxxxx011011://MADD_Q.W
    begin
    $fdisplay(fp,"MADD_Q.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx010100://BINSR.W
    begin
    $fdisplay(fp,"BINSR.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx000101://SE3L2.W
    begin
    $fdisplay(fp,"SE3L2.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101110xxxxxxxxxxxxxxxx011110://BCLRI.D
    begin
    $fdisplay(fp,"BCLRI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b01111000101xxxxxxxxxxxxxxx010011://DPADD_U.H
    begin
    $fdisplay(fp,"DPADD_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx011110://ALNV.PS
    begin
    $fdisplay(fp,"ALNV.PS: fd=%d, fs=%d, ft=%d, rs=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] ,insn[25:21] );
    end
32'b01000110110xxxxxxxxxxxxxxx000000://ADD.PS
    begin
    $fdisplay(fp,"ADD.PS: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001100xxxxxxxxxxxxxxx000010://MULVI.B
    begin
    $fdisplay(fp,"MULVI.B: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b101111xxxxxxxxxxxxxxxxxxxxxxxxxx://CACHE
    begin
    $fdisplay(fp,"CACHE: base=%d, offset=%d, op=%d " ,insn[25:21] ,insn[15: 0] ,insn[20:16] );
    end
32'b01111001111xxxxxxxxxxxxxxx000010://MULVI.D
    begin
    $fdisplay(fp,"MULVI.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b0111101111010110xxxxxxxxxx001111://FEXUPR.W
    begin
    $fdisplay(fp,"FEXUPR.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001101xxxxxxxxxxxxxxx000010://MULVI.H
    begin
    $fdisplay(fp,"MULVI.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001011xxxxxxxxxxxxxxx011100://FCUN.D
    begin
    $fdisplay(fp,"FCUN.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111110xxxxxxxxxxxxx011110://BCLRI.B
    begin
    $fdisplay(fp,"BCLRI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b0100011000100000xxxxxxxxxx001101://TRUNC.W.D
    begin
    $fdisplay(fp,"TRUNC.W.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxx00000xxxxx000101://LUXC1
    begin
    $fdisplay(fp,"LUXC1: index=%d, base=%d, fd=%d " ,insn[20:16] ,insn[25:21] ,insn[10: 6] );
    end
32'b0111100011111110xxxxxxxxxx011010://CFCMSA
    begin
    $fdisplay(fp,"CFCMSA: cs=%d, rd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111010111xxxxxxxxxx001111://FEXUPR.D
    begin
    $fdisplay(fp,"FEXUPR.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001110xxxxxxxxxxxxxxx000010://MULVI.W
    begin
    $fdisplay(fp,"MULVI.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001111xxxxxxxxxxxxxxx010110://SLDR.D
    begin
    $fdisplay(fp,"SLDR.D: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxx0000000000011011://DIVU
    begin
    $fdisplay(fp,"DIVU: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b0100011000000000xxxxxxxxxx001101://TRUNC.W.S
    begin
    $fdisplay(fp,"TRUNC.W.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b000001xxxxx10011xxxxxxxxxxxxxxxx://BGEZALL
    begin
    $fdisplay(fp,"BGEZALL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111001001xxxxxxxxxxxxxxx010110://MVTGR_U.H
    begin
    $fdisplay(fp,"MVTGR_U.H: rt=%d, rd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001001xxxxxxxxxxxxxxx000011://DPSUBI_S.H
    begin
    $fdisplay(fp,"DPSUBI_S.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001101xxxxxxxxxxxxxxx010110://SLDR.H
    begin
    $fdisplay(fp,"SLDR.H: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010000xxxxxxxxxxxxxxx011011://FMUL.W
    begin
    $fdisplay(fp,"FMUL.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001110xxxxxxxxxxxxxxx000011://DPSUBI_U.W
    begin
    $fdisplay(fp,"DPSUBI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001101xxxxxxxxxxxxxxx001111://ST.V
    begin
    $fdisplay(fp,"ST.V: wd=%d, s5=%d, rs=%d " ,insn[10: 6] ,insn[20:16] ,insn[15:11] );
    end
32'b01111011111xxxxxxxxxxxxxxx010000://ASUB_U.D
    begin
    $fdisplay(fp,"ASUB_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b101011xxxxxxxxxxxxxxxxxxxxxxxxxx://SW
    begin
    $fdisplay(fp,"SW: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01111001011xxxxxxxxxxxxxxx000011://DPSUBI_S.D
    begin
    $fdisplay(fp,"DPSUBI_S.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01000110110xxxxxxxxxxxxxxx101101://PLU.PS
    begin
    $fdisplay(fp,"PLU.PS: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b101001xxxxxxxxxxxxxxxxxxxxxxxxxx://SH
    begin
    $fdisplay(fp,"SH: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01111010001xxxxxxxxxxxxxxx011011://FMUL.D
    begin
    $fdisplay(fp,"FMUL.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b001101xxxxxxxxxxxxxxxxxxxxxxxxxx://ORI
    begin
    $fdisplay(fp,"ORI: rt=%d, immediate=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b111000xxxxxxxxxxxxxxxxxxxxxxxxxx://SC
    begin
    $fdisplay(fp,"SC: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b101000xxxxxxxxxxxxxxxxxxxxxxxxxx://SB
    begin
    $fdisplay(fp,"SB: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b110001xxxxxxxxxxxxxxxxxxxxxxxxxx://LWC1
    begin
    $fdisplay(fp,"LWC1: base=%d, ft=%d, offset=%d " ,insn[25:21] ,insn[20:16] ,insn[15: 0] );
    end
32'b01111001010xxxxxxxxxxxxxxx000011://DPSUBI_S.W
    begin
    $fdisplay(fp,"DPSUBI_S.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011001xxxxxxxxxxxxxxx010100://CLE_S.H
    begin
    $fdisplay(fp,"CLE_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110001010xxxxxxxxxxxxxx011010://MVTG_S.H
    begin
    $fdisplay(fp,"MVTG_S.H: rd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[19:16] );
    end
32'b01111000000xxxxxxxxxxxxxxx000101://SE3R0.B
    begin
    $fdisplay(fp,"SE3R0.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000100xxxxxxxxxxxxxxx011010://MVTG_S.B
    begin
    $fdisplay(fp,"MVTG_S.B: rd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000001110xxxxxxxxxxxx011010://SLD.D
    begin
    $fdisplay(fp,"SLD.D: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[17:16] );
    end
32'b01111011010xxxxxxxxxxxxxxx010100://CLE_S.W
    begin
    $fdisplay(fp,"CLE_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx000001://SUBSSI_U.B
    begin
    $fdisplay(fp,"SUBSSI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011000000000xxxxxxxxxx001011://FLOOR.L.S
    begin
    $fdisplay(fp,"FLOOR.L.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110001xxxxxxxxxxxxxxx010010://MOVZ.D
    begin
    $fdisplay(fp,"MOVZ.D: rt=%d, fs=%d, fd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx000101://SE3R0.W
    begin
    $fdisplay(fp,"SE3R0.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110001xxxxxxxxxxxxxxx000011://DIV.D
    begin
    $fdisplay(fp,"DIV.D: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b000001xxxxx11111xxxxxxxxxxxxxxxx://SYNCI
    begin
    $fdisplay(fp,"SYNCI: base=%d, offset=%d " ,insn[25:21] ,insn[15: 0] );
    end
32'b01111011011xxxxxxxxxxxxxxx010100://CLE_S.D
    begin
    $fdisplay(fp,"CLE_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx001011://FLOOR.L.D
    begin
    $fdisplay(fp,"FLOOR.L.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b0111100010110xxxxxxxxxxxxx011010://MVTG_S.W
    begin
    $fdisplay(fp,"MVTG_S.W: rd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[18:16] );
    end
32'b01111011000xxxxxxxxxxxxxxx010100://CLE_S.B
    begin
    $fdisplay(fp,"CLE_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111000100xxxxxxxxxx001111://FLOG2.W
    begin
    $fdisplay(fp,"FLOG2.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001111xxxxxxxxxxxxxxx010001://MAX_A.D
    begin
    $fdisplay(fp,"MAX_A.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b100000xxxxxxxxxxxxxxxxxxxxxxxxxx://LB
    begin
    $fdisplay(fp,"LB: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01111011011xxxxxxxxxxxxxxx010000://ASUB_S.D
    begin
    $fdisplay(fp,"ASUB_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b110000xxxxxxxxxxxxxxxxxxxxxxxxxx://LL
    begin
    $fdisplay(fp,"LL: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b010011xxxxxxxxxxxxxxx00000001000://SWXC1
    begin
    $fdisplay(fp,"SWXC1: index=%d, base=%d, fs=%d " ,insn[20:16] ,insn[25:21] ,insn[15:11] );
    end
32'b100001xxxxxxxxxxxxxxxxxxxxxxxxxx://LH
    begin
    $fdisplay(fp,"LH: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01111001001xxxxxxxxxxxxxxx000001://SUBSSI_U.H
    begin
    $fdisplay(fp,"SUBSSI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b100011xxxxxxxxxxxxxxxxxxxxxxxxxx://LW
    begin
    $fdisplay(fp,"LW: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b0111100111110xxxxxxxxxxxxx011110://SRAI.B
    begin
    $fdisplay(fp,"SRAI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b010011xxxxxxxxxx00000xxxxx000000://LWXC1
    begin
    $fdisplay(fp,"LWXC1: index=%d, base=%d, fd=%d " ,insn[20:16] ,insn[25:21] ,insn[10: 6] );
    end
32'b01111001111xxxxxxxxxxxxxxx000000://ADDSI_S.D
    begin
    $fdisplay(fp,"ADDSI_S.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001010xxxxxxxxxxxxxxx011100://FCUN.W
    begin
    $fdisplay(fp,"FCUN.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011011000000xxxxxxxxxx000101://ABS.PS
    begin
    $fdisplay(fp,"ABS.PS: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001100xxxxxxxxxxxxxxx001111://LDX.V
    begin
    $fdisplay(fp,"LDX.V: rt=%d, wd=%d, rs=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001011xxxxxxxxxxxxxxx010000://ADDS_A.D
    begin
    $fdisplay(fp,"ADDS_A.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx010000://ADDS_A.B
    begin
    $fdisplay(fp,"ADDS_A.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx000010://AVEI_S.D
    begin
    $fdisplay(fp,"AVEI_S.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b000001xxxxx00001xxxxxxxxxxxxxxxx://BGEZ
    begin
    $fdisplay(fp,"BGEZ: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010010xxxxxxxxxxxxxxx000101://SE3L0.W
    begin
    $fdisplay(fp,"SE3L0.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx010000://ADDS_A.H
    begin
    $fdisplay(fp,"ADDS_A.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001011xxxxxxxxxxxxxxx000001://SUBSSI_U.D
    begin
    $fdisplay(fp,"SUBSSI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001010xxxxxxxxxxxxxxx010000://ADDS_A.W
    begin
    $fdisplay(fp,"ADDS_A.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010001xxxxxxxxxxxxxxx000101://SE3L0.H
    begin
    $fdisplay(fp,"SE3L0.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001110xxxxxxxxxxxxxxx011110://SRAI.W
    begin
    $fdisplay(fp,"SRAI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01111001xxxxxxxxxxxxxxxxxx001011://BMZI.B
    begin
    $fdisplay(fp,"BMZI.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001000xxxxxxxxxxxxxxx010001://SUBSS_U.B
    begin
    $fdisplay(fp,"SUBSS_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010000xxxxxxxxxxxxxxx000101://SE3L0.B
    begin
    $fdisplay(fp,"SE3L0.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000100xxxxxxxxxxxxxxx010110://MVTGR_S.B
    begin
    $fdisplay(fp,"MVTGR_S.B: rt=%d, rd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101110001100xxxxxxxxxx001111://NLZC.B
    begin
    $fdisplay(fp,"NLZC.B: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001111xxxxxxxxxxxxxxx010000://ADDS_S.D
    begin
    $fdisplay(fp,"ADDS_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001100xxxxxxxxxxxxxxx010000://ADDS_S.B
    begin
    $fdisplay(fp,"ADDS_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110011110xxxxxxxxxxxxxx011110://SRAI.H
    begin
    $fdisplay(fp,"SRAI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111011010xxxxxxxxxxxxxxx000001://MINI_A.W
    begin
    $fdisplay(fp,"MINI_A.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx101110://MSUB.PS
    begin
    $fdisplay(fp,"MSUB.PS: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001101xxxxxxxxxxxxxxx010000://ADDS_S.H
    begin
    $fdisplay(fp,"ADDS_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001110xxxxxxxxxxxxxxx010000://ADDS_S.W
    begin
    $fdisplay(fp,"ADDS_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010100xxxxxxxxxxxxxxx000111://S3IL1.B
    begin
    $fdisplay(fp,"S3IL1.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011001xxxxxxxxxxxxxxx000001://MINI_A.H
    begin
    $fdisplay(fp,"MINI_A.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011011xxxxxxxxxxxxxxx000001://MINI_A.D
    begin
    $fdisplay(fp,"MINI_A.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011000xxxxxxxxxxxxxxx000001://MINI_A.B
    begin
    $fdisplay(fp,"MINI_A.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101110000111xxxxxxxxxx001111://PCNT.D
    begin
    $fdisplay(fp,"PCNT.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b00000000001xxxxxxxxxxxxxxx000010://ROTR
    begin
    $fdisplay(fp,"ROTR: rt=%d, rd=%d, sa=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011000xxxxxxxxxxxxxxx000111://S3IL2.B
    begin
    $fdisplay(fp,"S3IL2.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000101xxxxxxxxxxxxxxx010001://SUBS_U.H
    begin
    $fdisplay(fp,"SUBS_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx000001://SUBSI_U.D
    begin
    $fdisplay(fp,"SUBSI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01000010000000000000000000011111://DERET
    $fdisplay(fp,"DERET");
32'b01111000100xxxxxxxxxxxxxxx010001://SUBS_U.B
    begin
    $fdisplay(fp,"SUBS_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111000011xxxxxxxxxx001111://FRINT.D
    begin
    $fdisplay(fp,"FRINT.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000100xxxxxxxxxxxxxxx000001://SUBSI_U.B
    begin
    $fdisplay(fp,"SUBSI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001010xxxxxxxxxxxxxxx010110://MVTGR_U.W
    begin
    $fdisplay(fp,"MVTGR_U.W: rt=%d, rd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101110000101xxxxxxxxxx001111://PCNT.H
    begin
    $fdisplay(fp,"PCNT.H: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000110xxxxxxxxxxxxxxx010001://SUBS_U.W
    begin
    $fdisplay(fp,"SUBS_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx000001://SUBSI_U.W
    begin
    $fdisplay(fp,"SUBSI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101111000010xxxxxxxxxx001111://FRINT.W
    begin
    $fdisplay(fp,"FRINT.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01000010000000000000000000000001://TLBR
    $fdisplay(fp,"TLBR");
32'b01000010000000000000000000001000://TLBP
    $fdisplay(fp,"TLBP");
32'b000111xxxxx00000xxxxxxxxxxxxxxxx://BGTZ
    begin
    $fdisplay(fp,"BGTZ: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b100100xxxxxxxxxxxxxxxxxxxxxxxxxx://LBU
    begin
    $fdisplay(fp,"LBU: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx001100://SYSCALL
    begin
    $fdisplay(fp,"SYSCALL: t=%d " ,insn[25: 6] );
    end
32'b0111100010111110xxxxxxxxxx011010://CTCMSA
    begin
    $fdisplay(fp,"CTCMSA: cd=%d, rs=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001010xxxxxxxxxxxxxxx010011://DPSUB_S.W
    begin
    $fdisplay(fp,"DPSUB_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx010001://SUBS_S.W
    begin
    $fdisplay(fp,"SUBS_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111100110xxxxxxxxxxxxxxxx011110://SRAI.D
    begin
    $fdisplay(fp,"SRAI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b01111010000xxxxxxxxxxxxxxx000111://S3IL0.B
    begin
    $fdisplay(fp,"S3IL0.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx010011://DPSUB_S.H
    begin
    $fdisplay(fp,"DPSUB_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx010001://SUBS_S.B
    begin
    $fdisplay(fp,"SUBS_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000011xxxxxxxxxxxxxxx010001://SUBS_S.D
    begin
    $fdisplay(fp,"SUBS_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001011xxxxxxxxxxxxxxx010011://DPSUB_S.D
    begin
    $fdisplay(fp,"DPSUB_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx000101://SE3R2.W
    begin
    $fdisplay(fp,"SE3R2.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx011100://FCLE.W
    begin
    $fdisplay(fp,"FCLE.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110000110xxxxxxxxxxxxxx011010://MOVE.H
    begin
    $fdisplay(fp,"MOVE.H: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[19:16] );
    end
32'b01111000011110xxxxxxxxxxxx011010://MOVE.D
    begin
    $fdisplay(fp,"MOVE.D: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[17:16] );
    end
32'b01111000010xxxxxxxxxxxxxxx011010://MOVE.B
    begin
    $fdisplay(fp,"MOVE.B: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b010011xxxxxxxxxxxxxxx00000001111://PREFX
    begin
    $fdisplay(fp,"PREFX: index=%d, base=%d, hint=%d " ,insn[20:16] ,insn[25:21] ,insn[15:11] );
    end
32'b000011xxxxxxxxxxxxxxxxxxxxxxxxxx://JAL
    begin
    $fdisplay(fp,"JAL: t=%d " ,insn[25: 0] );
    end
32'b01111001110xxxxxxxxxxxxxxx010010://MULV.W
    begin
    $fdisplay(fp,"MULV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx000101://SE3R2.B
    begin
    $fdisplay(fp,"SE3R2.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111100001110xxxxxxxxxxxxx011010://MOVE.W
    begin
    $fdisplay(fp,"MOVE.W: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[18:16] );
    end
32'b0111100001111110xxxxxxxxxx011010://MOVE.V
    begin
    $fdisplay(fp,"MOVE.V: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001001xxxxxxxxxxxxxxx000101://SE3R2.H
    begin
    $fdisplay(fp,"SE3R2.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000000000xxxxxxxxxx000100://SQRT.S
    begin
    $fdisplay(fp,"SQRT.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101110001101xxxxxxxxxx001111://NLZC.H
    begin
    $fdisplay(fp,"NLZC.H: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b000001xxxxx01110xxxxxxxxxxxxxxxx://TNEI
    begin
    $fdisplay(fp,"TNEI: immediate=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01000101000xxx10xxxxxxxxxxxxxxxx://BC1FL
    begin
    $fdisplay(fp,"BC1FL: cc=%d, offset=%d " ,insn[20:18] ,insn[15: 0] );
    end
32'b01111010101xxxxxxxxxxxxxxx010100://CLT_S.H
    begin
    $fdisplay(fp,"CLT_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000001xxxxx01010xxxxxxxxxxxxxxxx://TLTI
    begin
    $fdisplay(fp,"TLTI: immediate=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010110xxxxxxxxxxxxxxx000010://MSUBVI.W
    begin
    $fdisplay(fp,"MSUBVI.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001000xxxxxxxxxxxxxxx000010://AVEI_U.B
    begin
    $fdisplay(fp,"AVEI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010100xxxxxxxxxxxxxxx010100://CLT_S.B
    begin
    $fdisplay(fp,"CLT_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx010101://CLE_U.H
    begin
    $fdisplay(fp,"CLE_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010111xxxxxxxxxxxxxxx010100://CLT_S.D
    begin
    $fdisplay(fp,"CLT_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx000010://AVEI_U.H
    begin
    $fdisplay(fp,"AVEI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010111xxxxxxxxxxxxxxx000010://MSUBVI.D
    begin
    $fdisplay(fp,"MSUBVI.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000100xxxxxxxxxxxxxxx001111://BMNZ.V
    begin
    $fdisplay(fp,"BMNZ.V: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx000010://AVEI_U.W
    begin
    $fdisplay(fp,"AVEI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000010xxxxxxxxxxxxxxx010101://CLE_U.W
    begin
    $fdisplay(fp,"CLE_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010100xxxxxxxxxxxxxxx000010://MSUBVI.B
    begin
    $fdisplay(fp,"MSUBVI.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b00111100000xxxxxxxxxxxxxxxxxxxxx://LUI
    begin
    $fdisplay(fp,"LUI: rt=%d, immediate=%d " ,insn[20:16] ,insn[15: 0] );
    end
32'b000000xxxxxxxxxxxxxxx00000100110://XOR
    begin
    $fdisplay(fp,"XOR: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111010101xxxxxxxxxxxxxxx000010://MSUBVI.H
    begin
    $fdisplay(fp,"MSUBVI.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b011100xxxxxxxxxx0000000000000100://MSUB
    begin
    $fdisplay(fp,"MSUB: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b000001xxxxx01011xxxxxxxxxxxxxxxx://TLTIU
    begin
    $fdisplay(fp,"TLTIU: immediate=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b011100xxxxxxxxxx0000000000000000://MADD
    begin
    $fdisplay(fp,"MADD: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b01111001010xxxxxxxxxxxxxxx000000://ADDSI_A.W
    begin
    $fdisplay(fp,"ADDSI_A.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011110xxxxxxxxxxxxxxx010100://CLT_U.W
    begin
    $fdisplay(fp,"CLT_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx000000://ADDSI_A.B
    begin
    $fdisplay(fp,"ADDSI_A.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010010xxxxxxxxxxxxxxx000010://MADDVI.W
    begin
    $fdisplay(fp,"MADDVI.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001011xxxxxxxxxxxxxxx000000://ADDSI_A.D
    begin
    $fdisplay(fp,"ADDSI_A.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000000xxxxxxxxxxxxxxx010101://CLE_U.B
    begin
    $fdisplay(fp,"CLE_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx000000://ADDSI_A.H
    begin
    $fdisplay(fp,"ADDSI_A.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011100xxxxxxxxxxxxxxx010100://CLT_U.B
    begin
    $fdisplay(fp,"CLT_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx000000://ADDSI_U.D
    begin
    $fdisplay(fp,"ADDSI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxx00000100011://SUBU
    begin
    $fdisplay(fp,"SUBU: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01000001011xxxxx0110000000100000://EI
    begin
    $fdisplay(fp,"EI: rt=%d " ,insn[20:16] );
    end
32'b000001xxxxx00010xxxxxxxxxxxxxxxx://BLTZL
    begin
    $fdisplay(fp,"BLTZL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b0111101110001010xxxxxxxxxx001111://NLOC.W
    begin
    $fdisplay(fp,"NLOC.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b000001xxxxx10010xxxxxxxxxxxxxxxx://BLTZALL
    begin
    $fdisplay(fp,"BLTZALL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010001xxxxxxxxxxxxxxx000000://ADDSI_U.H
    begin
    $fdisplay(fp,"ADDSI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010010xxxxxxxxxxxxxxx000000://ADDSI_U.W
    begin
    $fdisplay(fp,"ADDSI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101110001000xxxxxxxxxx001111://NLOC.B
    begin
    $fdisplay(fp,"NLOC.B: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101110001011xxxxxxxxxx001111://NLOC.D
    begin
    $fdisplay(fp,"NLOC.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000110xxxxxxxxxxxxxxx010110://MVTGR_S.W
    begin
    $fdisplay(fp,"MVTGR_S.W: rt=%d, rd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111100000xxxxxxxxxxxxxxxx011110://SAT_S.D
    begin
    $fdisplay(fp,"SAT_S.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b0111101110001001xxxxxxxxxx001111://NLOC.H
    begin
    $fdisplay(fp,"NLOC.H: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001101xxxxxxxxxxxxxxx010011://DPSUB_U.H
    begin
    $fdisplay(fp,"DPSUB_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxx00000001001://SDXC1
    begin
    $fdisplay(fp,"SDXC1: index=%d, base=%d, fs=%d " ,insn[20:16] ,insn[25:21] ,insn[15:11] );
    end
32'b01111011100xxxxxxxxxxxxxxx010000://ASUB_U.B
    begin
    $fdisplay(fp,"ASUB_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx010000://ASUB_S.W
    begin
    $fdisplay(fp,"ASUB_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx000010://AVEI_S.W
    begin
    $fdisplay(fp,"AVEI_S.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000110xxxxxxxxxxxxxxx011010://MVTG_U.B
    begin
    $fdisplay(fp,"MVTG_U.B: rd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001110xxxxxxxxxxxxxxx000000://ADDSI_S.W
    begin
    $fdisplay(fp,"ADDSI_S.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001101xxxxxxxxxxxxxxx010010://MULV.H
    begin
    $fdisplay(fp,"MULV.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011101xxxxxxxxxxxxxxx010000://ASUB_U.H
    begin
    $fdisplay(fp,"ASUB_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110001110xxxxxxxxxxxxxx011010://MVTG_U.H
    begin
    $fdisplay(fp,"MVTG_U.H: rd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[19:16] );
    end
32'b01111000100xxxxxxxxxxxxxxx000010://AVEI_S.B
    begin
    $fdisplay(fp,"AVEI_S.B: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001100xxxxxxxxxxxxxxx000000://ADDSI_S.B
    begin
    $fdisplay(fp,"ADDSI_S.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111100011110xxxxxxxxxxxxx011010://MVTG_U.W
    begin
    $fdisplay(fp,"MVTG_U.W: rd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[18:16] );
    end
32'b01111011110xxxxxxxxxxxxxxx010000://ASUB_U.W
    begin
    $fdisplay(fp,"ASUB_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110110xxxxxxxxxxxxxxx010011://MOVN.PS
    begin
    $fdisplay(fp,"MOVN.PS: rt=%d, fs=%d, fd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011000xxxxxxxxxxxxxxx010000://ASUB_S.B
    begin
    $fdisplay(fp,"ASUB_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001101xxxxxxxxxxxxxxx000000://ADDSI_S.H
    begin
    $fdisplay(fp,"ADDSI_S.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000101xxxxxxxxxxxxxxx000010://AVEI_S.H
    begin
    $fdisplay(fp,"AVEI_S.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011001xxxxxxxxxxxxxxx010000://ASUB_S.H
    begin
    $fdisplay(fp,"ASUB_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx001111://OR.V
    begin
    $fdisplay(fp,"OR.V: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111010101xxxxxxxxxx001111://FEXUPL.D
    begin
    $fdisplay(fp,"FEXUPL.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011000000000xxxxxxxxxx001001://TRUNC.L.S
    begin
    $fdisplay(fp,"TRUNC.L.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx010011://SRL.W
    begin
    $fdisplay(fp,"SRL.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101110001110xxxxxxxxxx001111://NLZC.W
    begin
    $fdisplay(fp,"NLZC.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b000001xxxxx10001xxxxxxxxxxxxxxxx://BGEZAL
    begin
    $fdisplay(fp,"BGEZAL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b0100011000100000xxxxxxxxxx001001://TRUNC.L.D
    begin
    $fdisplay(fp,"TRUNC.L.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011001xxxxxxxxxxxxxxx010011://SRL.H
    begin
    $fdisplay(fp,"SRL.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011100xxxxxxxxxxxxxxx00000000010://MUL
    begin
    $fdisplay(fp,"MUL: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111011011xxxxxxxxxxxxxxx010011://SRL.D
    begin
    $fdisplay(fp,"SRL.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011000xxxxxxxxxxxxxxx010011://SRL.B
    begin
    $fdisplay(fp,"SRL.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101110001111xxxxxxxxxx001111://NLZC.D
    begin
    $fdisplay(fp,"NLZC.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000011xxxxxxxxxxxxxxx011100://FMIN_A.D
    begin
    $fdisplay(fp,"FMIN_A.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx011011://MUL_Q.W
    begin
    $fdisplay(fp,"MUL_Q.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111100000xxxxxxxxxx10000100000://SEB
    begin
    $fdisplay(fp,"SEB: rt=%d, rd=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b01111100000xxxxxxxxxx11000100000://SEH
    begin
    $fdisplay(fp,"SEH: rt=%d, rd=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b01111000011xxxxxxxxxxxxxxx010000://ADDV.D
    begin
    $fdisplay(fp,"ADDV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011100xxxxxxxxxxxxxxx00000100001://CLO
    begin
    $fdisplay(fp,"CLO: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111010110xxxxxxxxxxxxxxx011011://FMADD.W
    begin
    $fdisplay(fp,"FMADD.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx010000://ADDV.B
    begin
    $fdisplay(fp,"ADDV.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx111110://NMSUB.PS
    begin
    $fdisplay(fp,"NMSUB.PS: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000001xxxxxxxxxxxxxxx010000://ADDV.H
    begin
    $fdisplay(fp,"ADDV.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx000111://S3IR2.H
    begin
    $fdisplay(fp,"S3IR2.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx010000://ADDV.W
    begin
    $fdisplay(fp,"ADDV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010111xxxxxxxxxxxxxxx011011://FMADD.D
    begin
    $fdisplay(fp,"FMADD.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011100xxxxxxxxxxxxxxx00000100000://CLZ
    begin
    $fdisplay(fp,"CLZ: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111010011xxxxxxxxxxxxxxx000010://MADDVI.D
    begin
    $fdisplay(fp,"MADDVI.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011011xxxxxxxxxxxxxxx011011://FEXP2.D
    begin
    $fdisplay(fp,"FEXP2.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000010000000000000000000100000://WAIT
    $fdisplay(fp,"WAIT");
32'b01111011000xxxxxxxxxxxxxxx000011://CLEI_S.B
    begin
    $fdisplay(fp,"CLEI_S.B: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000010xxxxxxxxxxxxxxx000100://CLEI_U.W
    begin
    $fdisplay(fp,"CLEI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011011xxxxxxxxxxxxxxx000011://CLEI_S.D
    begin
    $fdisplay(fp,"CLEI_S.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011001xxxxxxxxxxxxxxx000011://CLEI_S.H
    begin
    $fdisplay(fp,"CLEI_S.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx001101://BREAK
    begin
    $fdisplay(fp,"BREAK: code=%d " ,insn[25: 6] );
    end
32'b01111000011xxxxxxxxxxxxxxx000100://CLEI_U.D
    begin
    $fdisplay(fp,"CLEI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101111010100xxxxxxxxxx001111://FEXUPL.W
    begin
    $fdisplay(fp,"FEXUPL.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011010xxxxxxxxxxxxxxx000011://CLEI_S.W
    begin
    $fdisplay(fp,"CLEI_S.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000000xxxxxxxxxxxxxxx000100://CLEI_U.B
    begin
    $fdisplay(fp,"CLEI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010010xxxxxxxxxxxxxxx011100://FTQ.H
    begin
    $fdisplay(fp,"FTQ.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx011100://FMIN_A.W
    begin
    $fdisplay(fp,"FMIN_A.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx000100://CLEI_U.H
    begin
    $fdisplay(fp,"CLEI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010000xxxxxxxxxxxxxxx000001://MAXI_S.B
    begin
    $fdisplay(fp,"MAXI_S.B: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010110xxxxxxxxxxxxxxx000001://MAXI_U.W
    begin
    $fdisplay(fp,"MAXI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b101010xxxxxxxxxxxxxxxxxxxxxxxxxx://SWL
    begin
    $fdisplay(fp,"SWL: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01000001011xxxxx0110000000000000://DI
    begin
    $fdisplay(fp,"DI: rt=%d " ,insn[20:16] );
    end
32'b01111010001xxxxxxxxxxxxxxx000001://MAXI_S.H
    begin
    $fdisplay(fp,"MAXI_S.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b000001xxxxx10000xxxxxxxxxxxxxxxx://BLTZAL
    begin
    $fdisplay(fp,"BLTZAL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010111xxxxxxxxxxxxxxx000001://MAXI_U.D
    begin
    $fdisplay(fp,"MAXI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010010xxxxxxxxxxxxxxx000001://MAXI_S.W
    begin
    $fdisplay(fp,"MAXI_S.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010100xxxxxxxxxxxxxxx000001://MAXI_U.B
    begin
    $fdisplay(fp,"MAXI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b101110xxxxxxxxxxxxxxxxxxxxxxxxxx://SWR
    begin
    $fdisplay(fp,"SWR: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01111010101xxxxxxxxxxxxxxx000001://MAXI_U.H
    begin
    $fdisplay(fp,"MAXI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxx0000000000011000://MULT
    begin
    $fdisplay(fp,"MULT: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b01111001100xxxxxxxxxxxxxxx000001://MAXI_A.B
    begin
    $fdisplay(fp,"MAXI_A.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001111xxxxxxxxxxxxxxx000001://MAXI_A.D
    begin
    $fdisplay(fp,"MAXI_A.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01000110000xxxxxxxxxxxxxxx100110://CVT.PS.S
    begin
    $fdisplay(fp,"CVT.PS.S: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011101xxxxxxxxxxxxxxx011011://FMAX.D
    begin
    $fdisplay(fp,"FMAX.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000101000xxx01xxxxxxxxxxxxxxxx://BC1T
    begin
    $fdisplay(fp,"BC1T: cc=%d, offset=%d " ,insn[20:18] ,insn[15: 0] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx110010://TLT
    begin
    $fdisplay(fp,"TLT: rt=%d, code=%d, rs=%d " ,insn[20:16] ,insn[15: 6] ,insn[25:21] );
    end
32'b01111001110xxxxxxxxxxxxxxx000001://MAXI_A.W
    begin
    $fdisplay(fp,"MAXI_A.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx110000://TGE
    begin
    $fdisplay(fp,"TGE: rt=%d, code=%d, rs=%d " ,insn[20:16] ,insn[15: 6] ,insn[25:21] );
    end
32'b01000101000xxx00xxxxxxxxxxxxxxxx://BC1F
    begin
    $fdisplay(fp,"BC1F: cc=%d, offset=%d " ,insn[20:18] ,insn[15: 0] );
    end
32'b0111101101110xxxxxxxxxxxxx011110://BINSRI.B
    begin
    $fdisplay(fp,"BINSRI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b01111010010xxxxxxxxxxxxxxx010101://ILVL.W
    begin
    $fdisplay(fp,"ILVL.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010101xxxxxxxxxxxxxxx010101://ILVR.H
    begin
    $fdisplay(fp,"ILVR.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101100xxxxxxxxxxxxxxxx011110://BINSRI.D
    begin
    $fdisplay(fp,"BINSRI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b000000xxxxxxxxxxxxxxx00000101010://SLT
    begin
    $fdisplay(fp,"SLT: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111010100xxxxxxxxxxxxxxx010101://ILVR.B
    begin
    $fdisplay(fp,"ILVR.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110110110xxxxxxxxxxxxxx011110://BINSRI.H
    begin
    $fdisplay(fp,"BINSRI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111010111xxxxxxxxxxxxxxx010101://ILVR.D
    begin
    $fdisplay(fp,"ILVR.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b00000000000xxxxxxxxxxxxxxx000000://SLL
    begin
    $fdisplay(fp,"SLL: rt=%d, rd=%d, sa=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx010101://ILVL.D
    begin
    $fdisplay(fp,"ILVL.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx011110://BINSRI.W
    begin
    $fdisplay(fp,"BINSRI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01111000001xxxxxxxxxxxxxxx010001://SUBS_S.H
    begin
    $fdisplay(fp,"SUBS_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010000xxxxxxxxxxxxxxx010101://ILVL.B
    begin
    $fdisplay(fp,"ILVL.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010110xxxxxxxxxxxxxxx010101://ILVR.W
    begin
    $fdisplay(fp,"ILVR.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010001xxxxxxxxxxxxxxx010101://ILVL.H
    begin
    $fdisplay(fp,"ILVL.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110001xxxxxxxxxxxxxxx000010://MUL.D
    begin
    $fdisplay(fp,"MUL.D: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010011xxxxxxxxxxxxxxx011011://FDIV.D
    begin
    $fdisplay(fp,"FDIV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000100111xxxxxxxxxx00000000000://MTHC1
    begin
    $fdisplay(fp,"MTHC1: rt=%d, fs=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b01111001101xxxxxxxxxxxxxxx010101://PCKOD.H
    begin
    $fdisplay(fp,"PCKOD.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001111xxxxxxxxxxxxxxx010101://PCKOD.D
    begin
    $fdisplay(fp,"PCKOD.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010xxxxxxxxxxxxxxxxxx001011://BSELI.B
    begin
    $fdisplay(fp,"BSELI.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx101001://MSUB.D
    begin
    $fdisplay(fp,"MSUB.D: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010010xxxxxxxxxxxxxxx011011://FDIV.W
    begin
    $fdisplay(fp,"FDIV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110000xxxxxxxxxxxxxxx000010://MUL.S
    begin
    $fdisplay(fp,"MUL.S: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001110xxxxxxxxxxxxxxx010101://PCKOD.W
    begin
    $fdisplay(fp,"PCKOD.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx101000://MSUB.S
    begin
    $fdisplay(fp,"MSUB.S: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010101xxxxxxxxxxxxxxx000111://S3IL1.H
    begin
    $fdisplay(fp,"S3IL1.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx001110://CEIL.W.D
    begin
    $fdisplay(fp,"CEIL.W.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxx0000000000xxxxx001000://JR
    begin
    $fdisplay(fp,"JR: hint=%d, rs=%d " ,insn[10: 6] ,insn[25:21] );
    end
32'b011111xxxxxxxxxxxxxxxxxxxx000000://EXT
    begin
    $fdisplay(fp,"EXT: rt=%d, sb=%d, sa=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] ,insn[25:21] );
    end
32'b0100011000000000xxxxxxxxxx001110://CEIL.W.S
    begin
    $fdisplay(fp,"CEIL.W.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000101xxxxxxxxxxxxxxx000001://SUBSI_U.H
    begin
    $fdisplay(fp,"SUBSI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011000100000xxxxxxxxxx010101://RECIP.D
    begin
    $fdisplay(fp,"RECIP.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011011000000xxxxxxxxxx000110://MOV.PS
    begin
    $fdisplay(fp,"MOV.PS: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011110xxxxxxxxxxxxxxx011110://BCLRI.W
    begin
    $fdisplay(fp,"BCLRI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01111001110xxxxxxxxxxxxxxx010110://SLDR.W
    begin
    $fdisplay(fp,"SLDR.W: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011000000000xxxxxxxxxx001000://ROUND.L.S
    begin
    $fdisplay(fp,"ROUND.L.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000101xxxxxxxxxxxxxxx010000://ADD_A.H
    begin
    $fdisplay(fp,"ADD_A.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx001000://ROUND.L.D
    begin
    $fdisplay(fp,"ROUND.L.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx010000://ADD_A.W
    begin
    $fdisplay(fp,"ADD_A.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000000000xxxxxxxxxx010101://RECIP.S
    begin
    $fdisplay(fp,"RECIP.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01000000100xxxxxxxxxx00000000xxx://MTC0
    begin
    $fdisplay(fp,"MTC0: rt=%d, rd=%d, sel=%d " ,insn[20:16] ,insn[15:11] ,insn[ 2: 0] );
    end
32'b01000100100xxxxxxxxxx00000000000://MTC1
    begin
    $fdisplay(fp,"MTC1: rt=%d, fs=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b011110111110xxxxxxxxxxxxxx011110://BCLRI.H
    begin
    $fdisplay(fp,"BCLRI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111000110xxxxxxxxxxxxxxx011011://MADDR_Q.H
    begin
    $fdisplay(fp,"MADDR_Q.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx010001://SUBS_U.D
    begin
    $fdisplay(fp,"SUBS_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000101xxxxxxxxxxxxxxx010110://MVTGR_S.H
    begin
    $fdisplay(fp,"MVTGR_S.H: rt=%d, rd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010110xxxxxxxxxxxxxxx000111://S3IL1.W
    begin
    $fdisplay(fp,"S3IL1.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110110xxxxxxxxxxxxxxx101110://PUL.PS
    begin
    $fdisplay(fp,"PUL.PS: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000011xxxxxxxxxxxxxxx001111://XOR.V
    begin
    $fdisplay(fp,"XOR.V: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx011110://SAT_S.W
    begin
    $fdisplay(fp,"SAT_S.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01111001100xxxxxxxxxxxxxxx010010://MULV.B
    begin
    $fdisplay(fp,"MULV.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000101xxxxxxxxxxxxxxxxxxxxxxxxxx://BNE
    begin
    $fdisplay(fp,"BNE: rt=%d, offset=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b000000xxxxxxxxxxxxxxx00000100001://ADDU
    begin
    $fdisplay(fp,"ADDU: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111010011xxxxxxxxxxxxxxx011100://FTQ.W
    begin
    $fdisplay(fp,"FTQ.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b001010xxxxxxxxxxxxxxxxxxxxxxxxxx://SLTI
    begin
    $fdisplay(fp,"SLTI: rt=%d, immediate=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b0100011000100000xxxxxxxxxx000110://MOV.D
    begin
    $fdisplay(fp,"MOV.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011001xxxxxxxxxxxxxxx010101://ILVEV.H
    begin
    $fdisplay(fp,"ILVEV.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxx00000101011://SLTU
    begin
    $fdisplay(fp,"SLTU: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b0100011000000000xxxxxxxxxx000110://MOV.S
    begin
    $fdisplay(fp,"MOV.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b001000xxxxxxxxxxxxxxxxxxxxxxxxxx://ADDI
    begin
    $fdisplay(fp,"ADDI: rt=%d, immediate=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b01111000100xxxxxxxxxxxxxxx000000://ADDI_A.B
    begin
    $fdisplay(fp,"ADDI_A.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010001xxxxxxxxxxxxxxx000010://MADDVI.H
    begin
    $fdisplay(fp,"MADDVI.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000111xxxxxxxxxxxxxxx000000://ADDI_A.D
    begin
    $fdisplay(fp,"ADDI_A.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010100xxxxxxxxxxxxxxx000101://SE3L1.B
    begin
    $fdisplay(fp,"SE3L1.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111001000xxxxxxxxxx001111://FTINT_S.W
    begin
    $fdisplay(fp,"FTINT_S.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000101xxxxxxxxxxxxxxx000000://ADDI_A.H
    begin
    $fdisplay(fp,"ADDI_A.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010000xxxxxxxxxxxxxxx000010://MADDVI.B
    begin
    $fdisplay(fp,"MADDVI.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b00000000000000000000000000001111://SYNC
    $fdisplay(fp,"SYNC");
32'b01111001100xxxxxxxxxxxxxxx011100://FCEQU.W
    begin
    $fdisplay(fp,"FCEQU.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011100xxxxxxxxxxxxxxx011011://FMAX.W
    begin
    $fdisplay(fp,"FMAX.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010110xxxxxxxxxxxxxxx000101://SE3L1.W
    begin
    $fdisplay(fp,"SE3L1.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001xxxxxxxxxxxxxxxxxx001010://ORI.B
    begin
    $fdisplay(fp,"ORI.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101111001001xxxxxxxxxx001111://FTINT_S.D
    begin
    $fdisplay(fp,"FTINT_S.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000110xxxxxxxxxxxxxxx000000://ADDI_A.W
    begin
    $fdisplay(fp,"ADDI_A.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000001xxxxxxxxxxxxxxx010011://DPADD_S.H
    begin
    $fdisplay(fp,"DPADD_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111100000110xxxxxxxxxxxxx011010://SLD.W
    begin
    $fdisplay(fp,"SLD.W: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[18:16] );
    end
32'b110101xxxxxxxxxxxxxxxxxxxxxxxxxx://LDC1
    begin
    $fdisplay(fp,"LDC1: base=%d, ft=%d, offset=%d " ,insn[25:21] ,insn[20:16] ,insn[15: 0] );
    end
32'b01111001101xxxxxxxxxxxxxxx011100://FCEQU.D
    begin
    $fdisplay(fp,"FCEQU.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001xxxxxxxxxxxxxxxxxx001100://SHF.W
    begin
    $fdisplay(fp,"SHF.W: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000011xxxxxxxxxxxxxxx010011://DPADD_S.D
    begin
    $fdisplay(fp,"DPADD_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011xxxxxxxxxxxxxxxxxx001011://SHF.B
    begin
    $fdisplay(fp,"SHF.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010010xxxxxxxxxxxxxxx000011://CEQI.W
    begin
    $fdisplay(fp,"CEQI.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000xxxxxxxxxxxxxxxxxx001100://SHF.H
    begin
    $fdisplay(fp,"SHF.H: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010001xxxxxxxxxxxxxxx010001://MAX_S.H
    begin
    $fdisplay(fp,"MAX_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010010xxxxxxxxxxxxxxx010100://CEQ.W
    begin
    $fdisplay(fp,"CEQ.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111000110xxxxxxxxxx001111://FCLASS.W
    begin
    $fdisplay(fp,"FCLASS.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011000100000xxxxxxxxxx100101://CVT.L.D
    begin
    $fdisplay(fp,"CVT.L.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001111xxxxxxxxxxxxxxx011011://FSUB.D
    begin
    $fdisplay(fp,"FSUB.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx110000://NMADD.S
    begin
    $fdisplay(fp,"NMADD.S: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b0100011000000000xxxxxxxxxx100101://CVT.L.S
    begin
    $fdisplay(fp,"CVT.L.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx010100://CEQ.D
    begin
    $fdisplay(fp,"CEQ.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110110xxxxxxxxxxxxxxx101100://PLL.PS
    begin
    $fdisplay(fp,"PLL.PS: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010000xxxxxxxxxxxxxxx010100://CEQ.B
    begin
    $fdisplay(fp,"CEQ.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx010001://MAX_S.D
    begin
    $fdisplay(fp,"MAX_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx001111://NOR.V
    begin
    $fdisplay(fp,"NOR.V: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001110xxxxxxxxxxxxxxx011011://FSUB.W
    begin
    $fdisplay(fp,"FSUB.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx110001://NMADD.D
    begin
    $fdisplay(fp,"NMADD.D: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010001xxxxxxxxxxxxxxx010100://CEQ.H
    begin
    $fdisplay(fp,"CEQ.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111001010xxxxxxxxxx001111://FFINT_S.W
    begin
    $fdisplay(fp,"FFINT_S.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxx00000100100://AND
    begin
    $fdisplay(fp,"AND: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b0111101111001101xxxxxxxxxx001111://FTINT_U.D
    begin
    $fdisplay(fp,"FTINT_U.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001000xxxxxxxxxxxxxxx000111://S3IR2.B
    begin
    $fdisplay(fp,"S3IR2.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011000xxxxxxxxxxxxxxx011011://FMSUB.W
    begin
    $fdisplay(fp,"FMSUB.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010100xxxxxxxxxxxxxxx011100://FEXDO.H
    begin
    $fdisplay(fp,"FEXDO.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010110xxxxxxxxxxxxxxx000011://CLTI_S.W
    begin
    $fdisplay(fp,"CLTI_S.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b0111101111001100xxxxxxxxxx001111://FTINT_U.W
    begin
    $fdisplay(fp,"FTINT_U.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010101xxxxxxxxxxxxxxx011100://FEXDO.W
    begin
    $fdisplay(fp,"FEXDO.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011001xxxxxxxxxxxxxxx011011://FMSUB.D
    begin
    $fdisplay(fp,"FMSUB.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011101xxxxxxxxxxxxxxx010001://MIN_S.H
    begin
    $fdisplay(fp,"MIN_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010000xxxxxxxxxxxxxxx000011://CEQI.B
    begin
    $fdisplay(fp,"CEQI.B: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010000xxxxxxxxxxxxxxx010010://MADDV.B
    begin
    $fdisplay(fp,"MADDV.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011110xxxxxxxxxxxxxxx010101://ILVOD.W
    begin
    $fdisplay(fp,"ILVOD.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx010010://MADDV.D
    begin
    $fdisplay(fp,"MADDV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010001xxxxxxxxxxxxxxx010010://MADDV.H
    begin
    $fdisplay(fp,"MADDV.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx010001://MIN_A.W
    begin
    $fdisplay(fp,"MIN_A.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011100xxxxxxxxxxxxxxx010101://ILVOD.B
    begin
    $fdisplay(fp,"ILVOD.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010010xxxxxxxxxxxxxxx010010://MADDV.W
    begin
    $fdisplay(fp,"MADDV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011111xxxxxxxxxxxxxxx010101://ILVOD.D
    begin
    $fdisplay(fp,"ILVOD.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011101xxxxxxxxxxxxxxx010101://ILVOD.H
    begin
    $fdisplay(fp,"ILVOD.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxx0000000000011001://MULTU
    begin
    $fdisplay(fp,"MULTU: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b01111010111xxxxxxxxxxxxxxx000000://SUBVI.D
    begin
    $fdisplay(fp,"SUBVI.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b011100xxxxxxxxxx0000000000000001://MADDU
    begin
    $fdisplay(fp,"MADDU: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b01111000010xxxxxxxxxxxxxxx010011://DPADD_S.W
    begin
    $fdisplay(fp,"DPADD_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b001100xxxxxxxxxxxxxxxxxxxxxxxxxx://ANDI
    begin
    $fdisplay(fp,"ANDI: rt=%d, immediate=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010011xxxxxxxxxxxxxxx000011://CEQI.D
    begin
    $fdisplay(fp,"CEQI.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010100xxxxxxxxxxxxxxx000000://SUBVI.B
    begin
    $fdisplay(fp,"SUBVI.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000101xxxxxxxxxxxxxxx011100://FCEQ.D
    begin
    $fdisplay(fp,"FCEQ.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx000001://MAXI_S.D
    begin
    $fdisplay(fp,"MAXI_S.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010101xxxxxxxxxxxxxxx000000://SUBVI.H
    begin
    $fdisplay(fp,"SUBVI.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001010xxxxxxxxxxxxxxx001110://LDI.W
    begin
    $fdisplay(fp,"LDI.W: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000xxxxxxxxxxxxxxxxxx001010://ANDI.B
    begin
    $fdisplay(fp,"ANDI.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001001xxxxxxxxxxxxxxx001110://LDI.H
    begin
    $fdisplay(fp,"LDI.H: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111010110xxxxxxxxxxxxxxx000000://SUBVI.W
    begin
    $fdisplay(fp,"SUBVI.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000100xxxxxxxxxxxxxxx011100://FCEQ.W
    begin
    $fdisplay(fp,"FCEQ.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx001110://LDI.B
    begin
    $fdisplay(fp,"LDI.B: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111001011xxxxxxxxxxxxxxx001110://LDI.D
    begin
    $fdisplay(fp,"LDI.D: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b00000000000xxxxxxxxxxxxxxx000011://SRA
    begin
    $fdisplay(fp,"SRA: rt=%d, rd=%d, sa=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx010010://DOTP_S.W
    begin
    $fdisplay(fp,"DOTP_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111001011xxxxxxxxxx001111://FFINT_S.D
    begin
    $fdisplay(fp,"FFINT_S.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001110xxxxxxxxxxxxxxx001111://STX.V
    begin
    $fdisplay(fp,"STX.V: rt=%d, wd=%d, rs=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000001xxxxxxxxxxxxxxx011100://FMIN.D
    begin
    $fdisplay(fp,"FMIN.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010100xxxxxxxxxxxxxxx010000://SUBV.B
    begin
    $fdisplay(fp,"SUBV.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b00000000000xxxxxxxxxxxxxxx000010://SRL
    begin
    $fdisplay(fp,"SRL: rt=%d, rd=%d, sa=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx000111://S3IR0.B
    begin
    $fdisplay(fp,"S3IR0.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011011xxxxxxxxxxxxxxx010010://DOTP_S.D
    begin
    $fdisplay(fp,"DOTP_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b001110xxxxxxxxxxxxxxxxxxxxxxxxxx://XORI
    begin
    $fdisplay(fp,"XORI: rt=%d, immediate=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b01111011001xxxxxxxxxxxxxxx010010://DOTP_S.H
    begin
    $fdisplay(fp,"DOTP_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx011011://MUL_Q.H
    begin
    $fdisplay(fp,"MUL_Q.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011111xxxxxxxxxxxxxxx010010://DOTP_U.D
    begin
    $fdisplay(fp,"DOTP_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxx00000xxxxxxxxxx001001://JALR
    begin
    $fdisplay(fp,"JALR: rd=%d, hint=%d, rs=%d " ,insn[15:11] ,insn[10: 6] ,insn[25:21] );
    end
32'b01000010000000000000000000011000://ERET
    $fdisplay(fp,"ERET");
32'b01111011011xxxxxxxxxxxxxxx010001://MIN_A.D
    begin
    $fdisplay(fp,"MIN_A.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx010110://MOVER.W
    begin
    $fdisplay(fp,"MOVER.W: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b110011xxxxxxxxxxxxxxxxxxxxxxxxxx://PREF
    begin
    $fdisplay(fp,"PREF: base=%d, offset=%d, hint=%d " ,insn[25:21] ,insn[15: 0] ,insn[20:16] );
    end
32'b01111011101xxxxxxxxxxxxxxx010010://DOTP_U.H
    begin
    $fdisplay(fp,"DOTP_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010101xxxxxxxxxxxxxxx010000://SUBV.H
    begin
    $fdisplay(fp,"SUBV.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011110xxxxxxxxxxxxxxx010010://DOTP_U.W
    begin
    $fdisplay(fp,"DOTP_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxx00000000110://SRLV
    begin
    $fdisplay(fp,"SRLV: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111000001xxxxxxxxxxxxxxx010110://MOVER.H
    begin
    $fdisplay(fp,"MOVER.H: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000011xxxxxxxxxxxxxxx010110://MOVER.D
    begin
    $fdisplay(fp,"MOVER.D: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000000xxxxxxxxxxxxxxx010110://MOVER.B
    begin
    $fdisplay(fp,"MOVER.B: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01000100010xxxxxxxxxx00000000000://CFC1
    begin
    $fdisplay(fp,"CFC1: rt=%d, fs=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b011110001110xxxxxxxxxxxxxx011111://BNEGI.H
    begin
    $fdisplay(fp,"BNEGI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111001110xxxxxxxxxxxxxxx010001://MAX_A.W
    begin
    $fdisplay(fp,"MAX_A.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111100011110xxxxxxxxxxxxx011111://BNEGI.B
    begin
    $fdisplay(fp,"BNEGI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b01111001110xxxxxxxxxxxxxxx010100://BNEG.W
    begin
    $fdisplay(fp,"BNEG.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111100010xxxxxxxxxxxxxxxx011111://BNEGI.D
    begin
    $fdisplay(fp,"BNEGI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b01000110000xxxxxxxxxxxxxxx010010://MOVZ.S
    begin
    $fdisplay(fp,"MOVZ.S: rt=%d, fs=%d, fd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001101xxxxxxxxxxxxxxx010100://BNEG.H
    begin
    $fdisplay(fp,"BNEG.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011011000000xxxxxxxxxx000111://NEG.PS
    begin
    $fdisplay(fp,"NEG.PS: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001101xxxxxxxxxxxxxxx010001://MAX_A.H
    begin
    $fdisplay(fp,"MAX_A.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001111xxxxxxxxxxxxxxx010100://BNEG.D
    begin
    $fdisplay(fp,"BNEG.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxx0000000000011010://DIV
    begin
    $fdisplay(fp,"DIV: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b011111xxxxxxxxxxxxxxxxxxxx000100://INS
    begin
    $fdisplay(fp,"INS: rt=%d, sb=%d, sa=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] ,insn[25:21] );
    end
32'b01111001100xxxxxxxxxxxxxxx010001://MAX_A.B
    begin
    $fdisplay(fp,"MAX_A.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001100xxxxxxxxxxxxxxx010100://BNEG.B
    begin
    $fdisplay(fp,"BNEG.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx011111://BNEGI.W
    begin
    $fdisplay(fp,"BNEGI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01000110001xxxxxxxxxxxxxxx010011://MOVN.D
    begin
    $fdisplay(fp,"MOVN.D: rt=%d, fs=%d, fd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx000111://S3IR2.W
    begin
    $fdisplay(fp,"S3IR2.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010110xxxxx00000xxxxxxxxxxxxxxxx://BLEZL
    begin
    $fdisplay(fp,"BLEZL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b0111100100110xxxxxxxxxxxxx011010://MVFGE.W
    begin
    $fdisplay(fp,"MVFGE.W: rs=%d, wd=%d, n=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b01111000110xxxxxxxxxxxxxxx011100://FCLT.W
    begin
    $fdisplay(fp,"FCLT.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011001xxxxxxxxxxxxxxx010001://MIN_A.H
    begin
    $fdisplay(fp,"MIN_A.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx110110://NMADD.PS
    begin
    $fdisplay(fp,"NMADD.PS: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01000110000xxxxxxxxxxxxxxx010011://MOVN.S
    begin
    $fdisplay(fp,"MOVN.S: rt=%d, fs=%d, fd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110010010xxxxxxxxxxxxxx011010://MVFGE.H
    begin
    $fdisplay(fp,"MVFGE.H: rs=%d, wd=%d, n=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111001011xxxxxxxxxxxxxxx001111://LD.V
    begin
    $fdisplay(fp,"LD.V: wd=%d, s5=%d, rs=%d " ,insn[10: 6] ,insn[20:16] ,insn[15:11] );
    end
32'b01000010000000000000000000000110://TLBWR
    $fdisplay(fp,"TLBWR");
32'b01111000001xxxxxxxxxxxxxxx000101://SE3R0.H
    begin
    $fdisplay(fp,"SE3R0.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx011100://FCLT.D
    begin
    $fdisplay(fp,"FCLT.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx011010://MVFGE.B
    begin
    $fdisplay(fp,"MVFGE.B: rs=%d, wd=%d, n=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01000110000xxxxxxxxxxxxxxx000000://ADD.S
    begin
    $fdisplay(fp,"ADD.S: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010001xxxxxxxxxxxxxxx011100://FCLEU.D
    begin
    $fdisplay(fp,"FCLEU.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110000xxx00xxxxxxxxxx010001://MOVF.S
    begin
    $fdisplay(fp,"MOVF.S: cc=%d, fs=%d, fd=%d " ,insn[20:18] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000000000xxxxxxxxxx00000000xxx://MFC0
    begin
    $fdisplay(fp,"MFC0: rt=%d, rd=%d, sel=%d " ,insn[20:16] ,insn[15:11] ,insn[ 2: 0] );
    end
32'b01000100000xxxxxxxxxx00000000000://MFC1
    begin
    $fdisplay(fp,"MFC1: rt=%d, fs=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b01000110001xxxxxxxxxxxxxxx000000://ADD.D
    begin
    $fdisplay(fp,"ADD.D: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010000xxxxxxxxxxxxxxx011100://FCLEU.W
    begin
    $fdisplay(fp,"FCLEU.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110001xxx00xxxxxxxxxx010001://MOVF.D
    begin
    $fdisplay(fp,"MOVF.D: cc=%d, fs=%d, fd=%d " ,insn[20:18] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx011100://FCLE.D
    begin
    $fdisplay(fp,"FCLE.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx011110://SHLI.W
    begin
    $fdisplay(fp,"SHLI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b0100011000000000xxxxxxxxxx100001://CVT.D.S
    begin
    $fdisplay(fp,"CVT.D.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010010xxxxxxxxxxxxxxx010110://MVFGER.W
    begin
    $fdisplay(fp,"MVFGER.W: rt=%d, wd=%d, rs=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011010000000xxxxxxxxxx100001://CVT.D.W
    begin
    $fdisplay(fp,"CVT.D.W: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b0111100101110xxxxxxxxxxxxx011110://SHLI.B
    begin
    $fdisplay(fp,"SHLI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b01111010001xxxxxxxxxxxxxxx010110://MVFGER.H
    begin
    $fdisplay(fp,"MVFGER.H: rt=%d, wd=%d, rs=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111100100xxxxxxxxxxxxxxxx011110://SHLI.D
    begin
    $fdisplay(fp,"SHLI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b0100011010100000xxxxxxxxxx100001://CVT.D.L
    begin
    $fdisplay(fp,"CVT.D.L: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001101xxxxxxxxxxxxxxx000001://MAXI_A.H
    begin
    $fdisplay(fp,"MAXI_A.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b011110010110xxxxxxxxxxxxxx011110://SHLI.H
    begin
    $fdisplay(fp,"SHLI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111010000xxxxxxxxxxxxxxx010110://MVFGER.B
    begin
    $fdisplay(fp,"MVFGER.B: rt=%d, wd=%d, rs=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxx00000001011://MOVN
    begin
    $fdisplay(fp,"MOVN: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b0111101110000010xxxxxxxxxx001111://MVFG.W
    begin
    $fdisplay(fp,"MVFG.W: wd=%d, rs=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxx00xxxxx00000000001://MOVF
    begin
    $fdisplay(fp,"MOVF: cc=%d, rd=%d, rs=%d " ,insn[20:18] ,insn[15:11] ,insn[25:21] );
    end
32'b01000110000xxxxxxxxxxxxx0011xxxx://C.cond.S
    begin
    $fdisplay(fp,"C.cond.S: cc=%d, cond=%d, fs=%d, ft=%d " ,insn[10: 8] ,insn[ 3: 0] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000100xxxxxxxxxxxxxxx000101://SE3R1.B
    begin
    $fdisplay(fp,"SE3R1.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxx00000001010://MOVZ
    begin
    $fdisplay(fp,"MOVZ: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b0111101110000000xxxxxxxxxx001111://MVFG.B
    begin
    $fdisplay(fp,"MVFG.B: wd=%d, rs=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000100xxxxxxxxxxxxxxx011011://MADD_Q.H
    begin
    $fdisplay(fp,"MADD_Q.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxx01xxxxx00000000001://MOVT
    begin
    $fdisplay(fp,"MOVT: cc=%d, rd=%d, rs=%d " ,insn[20:18] ,insn[15:11] ,insn[25:21] );
    end
32'b01111000xxxxxxxxxxxxxxxxxx001011://BMNZI.B
    begin
    $fdisplay(fp,"BMNZI.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101110000001xxxxxxxxxx001111://MVFG.H
    begin
    $fdisplay(fp,"MVFG.H: wd=%d, rs=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b010101xxxxxxxxxxxxxxxxxxxxxxxxxx://BNEL
    begin
    $fdisplay(fp,"BNEL: rt=%d, offset=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b0111101011110xxxxxxxxxxxxx011110://BINSLI.B
    begin
    $fdisplay(fp,"BINSLI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b0111101010xxxxxxxxxxxxxxxx011110://BINSLI.D
    begin
    $fdisplay(fp,"BINSLI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b011110101110xxxxxxxxxxxxxx011110://BINSLI.H
    begin
    $fdisplay(fp,"BINSLI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b0100011000000000xxxxxxxxxx010110://RSQRT.S
    begin
    $fdisplay(fp,"RSQRT.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxx00000xxxxx000001://LDXC1
    begin
    $fdisplay(fp,"LDXC1: index=%d, base=%d, fd=%d " ,insn[20:16] ,insn[25:21] ,insn[10: 6] );
    end
32'b01111010110xxxxxxxxxxxxxxx011110://BINSLI.W
    begin
    $fdisplay(fp,"BINSLI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01111000101xxxxxxxxxxxxxxx000101://SE3R1.H
    begin
    $fdisplay(fp,"SE3R1.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx010110://RSQRT.D
    begin
    $fdisplay(fp,"RSQRT.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010010xxxxxxxxxxxxxxx010011://SHL.W
    begin
    $fdisplay(fp,"SHL.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010001xxxxxxxxxxxxxxx010011://SHL.H
    begin
    $fdisplay(fp,"SHL.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx010011://SHL.D
    begin
    $fdisplay(fp,"SHL.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx000011://DPADDI_S.H
    begin
    $fdisplay(fp,"DPADDI_S.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010000xxxxxxxxxxxxxxx010011://SHL.B
    begin
    $fdisplay(fp,"SHL.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx001111://FLOOR.W.D
    begin
    $fdisplay(fp,"FLOOR.W.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx000011://DPADDI_U.W
    begin
    $fdisplay(fp,"DPADDI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000000xxxxxxxxxxxxxxx000001://SUBSI_S.B
    begin
    $fdisplay(fp,"SUBSI_S.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000011xxxxxxxxxxxxxxx000011://DPADDI_S.D
    begin
    $fdisplay(fp,"DPADDI_S.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000010xxxxxxxxxxxxxxx001110://BNZ.W
    begin
    $fdisplay(fp,"BNZ.W: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx001111://BNZ.V
    begin
    $fdisplay(fp,"BNZ.V: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b0100011011000000xxxxxxxxxx101000://CVT.S.PL
    begin
    $fdisplay(fp,"CVT.S.PL: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx000111://S3IL2.W
    begin
    $fdisplay(fp,"S3IL2.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011001xxxxxxxxxxxxxxx000111://S3IL2.H
    begin
    $fdisplay(fp,"S3IL2.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000000000xxxxxxxxxx001111://FLOOR.W.S
    begin
    $fdisplay(fp,"FLOOR.W.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx001110://BNZ.H
    begin
    $fdisplay(fp,"BNZ.H: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx000011://DPADDI_U.D
    begin
    $fdisplay(fp,"DPADDI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011011000000xxxxxxxxxx100000://CVT.S.PU
    begin
    $fdisplay(fp,"CVT.S.PU: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000011xxxxxxxxxxxxxxx001110://BNZ.D
    begin
    $fdisplay(fp,"BNZ.D: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000101xxxxxxxxxxxxxxx000011://DPADDI_U.H
    begin
    $fdisplay(fp,"DPADDI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000010xxxxxxxxxxxxxxx000011://DPADDI_S.W
    begin
    $fdisplay(fp,"DPADDI_S.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxx00000100101://OR
    begin
    $fdisplay(fp,"OR: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111000000xxxxxxxxxxxxxxx001110://BNZ.B
    begin
    $fdisplay(fp,"BNZ.B: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxx00000000100://SLLV
    begin
    $fdisplay(fp,"SLLV: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111000110xxxxxxxxxxxxxxx000101://SE3R1.W
    begin
    $fdisplay(fp,"SE3R1.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx000001://SUBSI_S.W
    begin
    $fdisplay(fp,"SUBSI_S.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01000110000xxx01xxxxxxxxxx010001://MOVT.S
    begin
    $fdisplay(fp,"MOVT.S: cc=%d, fs=%d, fd=%d " ,insn[20:18] ,insn[15:11] ,insn[10: 6] );
    end
32'b0000000000000000xxxxx00000010000://MFHI
    begin
    $fdisplay(fp,"MFHI: rd=%d " ,insn[15:11] );
    end
32'b01111010101xxxxxxxxxxxxxxx010011://SRA.H
    begin
    $fdisplay(fp,"SRA.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010111xxxxx00000xxxxxxxxxxxxxxxx://BGTZL
    begin
    $fdisplay(fp,"BGTZL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx100110://MADD.PS
    begin
    $fdisplay(fp,"MADD.PS: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b000000xxxxxxxxxxxxxxx00001000110://ROTRV
    begin
    $fdisplay(fp,"ROTRV: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111000101xxxxxxxxxxxxxxx001110://BZ.H
    begin
    $fdisplay(fp,"BZ.H: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx000001://SUBSI_S.H
    begin
    $fdisplay(fp,"SUBSI_S.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000100xxxxxxxxxxxxxxx001110://BZ.B
    begin
    $fdisplay(fp,"BZ.B: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx010100://BCLR.W
    begin
    $fdisplay(fp,"BCLR.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx001110://BZ.D
    begin
    $fdisplay(fp,"BZ.D: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000101xxxxxxxxxxxxxxx010100://BCLR.H
    begin
    $fdisplay(fp,"BCLR.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000100xxxxxxxxxxxxxxx010100://BCLR.B
    begin
    $fdisplay(fp,"BCLR.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx001111://BZ.V
    begin
    $fdisplay(fp,"BZ.V: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx001110://BZ.W
    begin
    $fdisplay(fp,"BZ.W: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx010100://BCLR.D
    begin
    $fdisplay(fp,"BCLR.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111001111xxxxxxxxxx001111://FFINT_U.D
    begin
    $fdisplay(fp,"FFINT_U.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000010xxxxxxxxxxxxxxx011111://BSETI.W
    begin
    $fdisplay(fp,"BSETI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01111011110xxxxxxxxxxxxxxx000011://CLTI_U.W
    begin
    $fdisplay(fp,"CLTI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011010xxxxxxxxxxxxxxx010101://ILVEV.W
    begin
    $fdisplay(fp,"ILVEV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011100xxxxxxxxxxxxxxx000011://CLTI_U.B
    begin
    $fdisplay(fp,"CLTI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111100000xxxxxxxxxxxxxxxx011111://BSETI.D
    begin
    $fdisplay(fp,"BSETI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b0111101111001110xxxxxxxxxx001111://FFINT_U.W
    begin
    $fdisplay(fp,"FFINT_U.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b0111100001110xxxxxxxxxxxxx011111://BSETI.B
    begin
    $fdisplay(fp,"BSETI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b01111010100xxxxxxxxxxxxxxx000011://CLTI_S.B
    begin
    $fdisplay(fp,"CLTI_S.B: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011111xxxxxxxxxxxxxxx000011://CLTI_U.D
    begin
    $fdisplay(fp,"CLTI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000000xxxxxxxxxxxxxxx011100://FMIN.W
    begin
    $fdisplay(fp,"FMIN.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011101xxxxxxxxxxxxxxx000011://CLTI_U.H
    begin
    $fdisplay(fp,"CLTI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011011xxxxxxxxxxxxxxx010101://ILVEV.D
    begin
    $fdisplay(fp,"ILVEV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011000xxxxxxxxxxxxxxx010101://ILVEV.B
    begin
    $fdisplay(fp,"ILVEV.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110000110xxxxxxxxxxxxxx011111://BSETI.H
    begin
    $fdisplay(fp,"BSETI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111010100xxxxxxxxxxxxxxx010001://MAX_U.B
    begin
    $fdisplay(fp,"MAX_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx111001://NMSUB.D
    begin
    $fdisplay(fp,"NMSUB.D: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b0111101111000101xxxxxxxxxx001111://FLOG2.D
    begin
    $fdisplay(fp,"FLOG2.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000011xxxxxxxxxxxxxxx011011://MULR_Q.W
    begin
    $fdisplay(fp,"MULR_Q.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010111xxxxxxxxxxxxxxx010001://MAX_U.D
    begin
    $fdisplay(fp,"MAX_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b111101xxxxxxxxxxxxxxxxxxxxxxxxxx://SDC1
    begin
    $fdisplay(fp,"SDC1: base=%d, ft=%d, offset=%d " ,insn[25:21] ,insn[20:16] ,insn[15: 0] );
    end
32'b01111010101xxxxxxxxxxxxxxx010001://MAX_U.H
    begin
    $fdisplay(fp,"MAX_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx010001://SUBSS_U.W
    begin
    $fdisplay(fp,"SUBSS_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b111001xxxxxxxxxxxxxxxxxxxxxxxxxx://SWC1
    begin
    $fdisplay(fp,"SWC1: base=%d, ft=%d, offset=%d " ,insn[25:21] ,insn[20:16] ,insn[15: 0] );
    end
32'b01000110110xxx01xxxxxxxxxx010001://MOVT.PS
    begin
    $fdisplay(fp,"MOVT.PS: cc=%d, fs=%d, fd=%d " ,insn[20:18] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx010001://SUBSS_U.H
    begin
    $fdisplay(fp,"SUBSS_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010110xxxxxxxxxxxxxxx010001://MAX_U.W
    begin
    $fdisplay(fp,"MAX_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx111000://NMSUB.S
    begin
    $fdisplay(fp,"NMSUB.S: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01000110000xxxxxxxxxxxxxxx000011://DIV.S
    begin
    $fdisplay(fp,"DIV.S: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000010xxxxxxxxxxxxxxx011011://MULR_Q.H
    begin
    $fdisplay(fp,"MULR_Q.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001011xxxxxxxxxxxxxxx010001://SUBSS_U.D
    begin
    $fdisplay(fp,"SUBSS_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110110xxxxxxxxxxxxx0011xxxx://C.cond.PS
    begin
    $fdisplay(fp,"C.cond.PS: cc=%d, cond=%d, fs=%d, ft=%d " ,insn[10: 8] ,insn[ 3: 0] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010001xxxxxxxxxxxxxxx000111://S3IL0.H
    begin
    $fdisplay(fp,"S3IL0.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxx00000100010://SUB
    begin
    $fdisplay(fp,"SUB: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111001011xxxxxxxxxxxxxxx000010://AVEI_U.D
    begin
    $fdisplay(fp,"AVEI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011110xxxxxxxxxxxxxxx000010://DOTPI_U.W
    begin
    $fdisplay(fp,"DOTPI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010111xxxxxxxxxxxxxxx010011://SRA.D
    begin
    $fdisplay(fp,"SRA.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010100xxxxxxxxxxxxxxx010011://SRA.B
    begin
    $fdisplay(fp,"SRA.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000110xxxxx00000xxxxxxxxxxxxxxxx://BLEZ
    begin
    $fdisplay(fp,"BLEZ: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b000001xxxxx00011xxxxxxxxxxxxxxxx://BGEZL
    begin
    $fdisplay(fp,"BGEZL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111011101xxxxxxxxxxxxxxx000010://DOTPI_U.H
    begin
    $fdisplay(fp,"DOTPI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010110xxxxxxxxxxxxxxx010011://SRA.W
    begin
    $fdisplay(fp,"SRA.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011111xxxxxxxxxxxxxxx000010://DOTPI_U.D
    begin
    $fdisplay(fp,"DOTPI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010010xxxxxxxxxxxxxxx000111://S3IL0.W
    begin
    $fdisplay(fp,"S3IL0.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx000101://ABS.D
    begin
    $fdisplay(fp,"ABS.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx011011://MSUB_Q.W
    begin
    $fdisplay(fp,"MSUB_Q.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011011xxxxxxxxxxxxxxx000010://DOTPI_S.D
    begin
    $fdisplay(fp,"DOTPI_S.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011001xxxxxxxxxxxxxxx000010://DOTPI_S.H
    begin
    $fdisplay(fp,"DOTPI_S.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000011xxxxxxxxxxxxxxx010101://CLE_U.D
    begin
    $fdisplay(fp,"CLE_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx000010://DOTPI_S.W
    begin
    $fdisplay(fp,"DOTPI_S.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011100xxxxxxxxxxxxxxx010001://MIN_S.B
    begin
    $fdisplay(fp,"MIN_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010xxxxxxxxxxxxxxxxxx001010://NORI.B
    begin
    $fdisplay(fp,"NORI.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx110100://TEQ
    begin
    $fdisplay(fp,"TEQ: rt=%d, code=%d, rs=%d " ,insn[20:16] ,insn[15: 6] ,insn[25:21] );
    end
32'b01111001000xxxxxxxxxxxxxxx011011://MSUB_Q.H
    begin
    $fdisplay(fp,"MSUB_Q.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx000000://ASUBI_S.W
    begin
    $fdisplay(fp,"ASUBI_S.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx100000://MADD.S
    begin
    $fdisplay(fp,"MADD.S: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b0100011000000000xxxxxxxxxx000111://NEG.S
    begin
    $fdisplay(fp,"NEG.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110110xxxxxxxxxxxxxxx010010://MOVZ.PS
    begin
    $fdisplay(fp,"MOVZ.PS: rt=%d, fs=%d, fd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000010xxxxxxxxxxxxxxxxxxxxxxxxxx://J
    begin
    $fdisplay(fp,"J: t=%d " ,insn[25: 0] );
    end
32'b0100011000100000xxxxxxxxxx000111://NEG.D
    begin
    $fdisplay(fp,"NEG.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxx00000100000://ADD
    begin
    $fdisplay(fp,"ADD: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111011011xxxxxxxxxxxxxxx000000://ASUBI_S.D
    begin
    $fdisplay(fp,"ASUBI_S.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011000xxxxxxxxxxxxxxx000000://ASUBI_S.B
    begin
    $fdisplay(fp,"ASUBI_S.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx100001://MADD.D
    begin
    $fdisplay(fp,"MADD.D: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010101xxxxxxxxxxxxxxx010010://MSUBV.H
    begin
    $fdisplay(fp,"MSUBV.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011001xxxxxxxxxxxxxxx000000://ASUBI_S.H
    begin
    $fdisplay(fp,"ASUBI_S.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011110xxxxxxxxxxxxxxx010001://MIN_S.W
    begin
    $fdisplay(fp,"MIN_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110000xxxxxxxxxxxxxxx000001://SUB.S
    begin
    $fdisplay(fp,"SUB.S: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b001011xxxxxxxxxxxxxxxxxxxxxxxxxx://SLTIU
    begin
    $fdisplay(fp,"SLTIU: rt=%d, immediate=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010010xxxxxxxxxxxxxxx010001://MAX_S.W
    begin
    $fdisplay(fp,"MAX_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001111xxxxxxxxxxxxxxx011100://FCLTU.D
    begin
    $fdisplay(fp,"FCLTU.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110000010xxxxxxxxxxxxxx011010://SLD.H
    begin
    $fdisplay(fp,"SLD.H: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[19:16] );
    end
32'b01111011111xxxxxxxxxxxxxxx010001://MIN_S.D
    begin
    $fdisplay(fp,"MIN_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110001xxxxxxxxxxxxxxx000001://SUB.D
    begin
    $fdisplay(fp,"SUB.D: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01000110110xxxxxxxxxxxxxxx000001://SUB.PS
    begin
    $fdisplay(fp,"SUB.PS: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000000xxxxxxxxxxxxxxx011010://SLD.B
    begin
    $fdisplay(fp,"SLD.B: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001110xxxxxxxxxxxxxxx011100://FCLTU.W
    begin
    $fdisplay(fp,"FCLTU.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010000xxxxxxxxxxxxxxx010001://MAX_S.B
    begin
    $fdisplay(fp,"MAX_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010100xxxxxxxxxxxxxxxxxxxxxxxxxx://BEQL
    begin
    $fdisplay(fp,"BEQL: rt=%d, offset=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b01111011010xxxxxxxxxxxxxxx011011://FEXP2.W
    begin
    $fdisplay(fp,"FEXP2.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111000000xxxxxxxxxx001111://FSQRT.W
    begin
    $fdisplay(fp,"FSQRT.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01000110110xxxxxxxxxxxxxxx000010://MUL.PS
    begin
    $fdisplay(fp,"MUL.PS: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b0000000000000000xxxxx00000010010://MFLO
    begin
    $fdisplay(fp,"MFLO: rd=%d " ,insn[15:11] );
    end
32'b100110xxxxxxxxxxxxxxxxxxxxxxxxxx://LWR
    begin
    $fdisplay(fp,"LWR: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01111001100xxxxxxxxxxxxxxx010101://PCKOD.B
    begin
    $fdisplay(fp,"PCKOD.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010001xxxxxxxxxxxxxxx000011://CEQI.H
    begin
    $fdisplay(fp,"CEQI.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b0100011010000000xxxxxxxxxx100000://CVT.S.W
    begin
    $fdisplay(fp,"CVT.S.W: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111000001xxxxxxxxxx001111://FSQRT.D
    begin
    $fdisplay(fp,"FSQRT.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxx00000000111://SRAV
    begin
    $fdisplay(fp,"SRAV: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111000010xxxxxxxxxxxxxxx000111://S3IR0.W
    begin
    $fdisplay(fp,"S3IR0.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011010100000xxxxxxxxxx100000://CVT.S.L
    begin
    $fdisplay(fp,"CVT.S.L: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b100010xxxxxxxxxxxxxxxxxxxxxxxxxx://LWL
    begin
    $fdisplay(fp,"LWL: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01111011000xxxxxxxxxxxxxxx010001://MIN_A.B
    begin
    $fdisplay(fp,"MIN_A.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx100000://CVT.S.D
    begin
    $fdisplay(fp,"CVT.S.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx110011://TLTU
    begin
    $fdisplay(fp,"TLTU: rt=%d, code=%d, rs=%d " ,insn[20:16] ,insn[15: 6] ,insn[25:21] );
    end
32'b01000110001xxx01xxxxxxxxxx010001://MOVT.D
    begin
    $fdisplay(fp,"MOVT.D: cc=%d, fs=%d, fd=%d " ,insn[20:18] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010110xxxxxxxxxxxxxxx010100://CLT_S.W
    begin
    $fdisplay(fp,"CLT_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b001001xxxxxxxxxxxxxxxxxxxxxxxxxx://ADDIU
    begin
    $fdisplay(fp,"ADDIU: rt=%d, immediate=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010101xxxxxxxxxxxxxxx000011://CLTI_S.H
    begin
    $fdisplay(fp,"CLTI_S.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000101xxxxxxxxxxxxxxx010010://AVE_S.H
    begin
    $fdisplay(fp,"AVE_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx001111://AND.V
    begin
    $fdisplay(fp,"AND.V: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010111xxxxxxxxxxxxxxx000011://CLTI_S.D
    begin
    $fdisplay(fp,"CLTI_S.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000111xxxxxxxxxxxxxxx010010://AVE_S.D
    begin
    $fdisplay(fp,"AVE_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000000000xxxxxxxxxx000101://ABS.S
    begin
    $fdisplay(fp,"ABS.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011110xxxxxxxxxxxxxxx000000://ASUBI_U.W
    begin
    $fdisplay(fp,"ASUBI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000100xxxxxxxxxxxxxxx010010://AVE_S.B
    begin
    $fdisplay(fp,"AVE_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx110110://TNE
    begin
    $fdisplay(fp,"TNE: rt=%d, code=%d, rs=%d " ,insn[20:16] ,insn[15: 6] ,insn[25:21] );
    end
32'b01111011101xxxxxxxxxxxxxxx000000://ASUBI_U.H
    begin
    $fdisplay(fp,"ASUBI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000110xxxxxxxxxxxxxxx010010://AVE_S.W
    begin
    $fdisplay(fp,"AVE_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011100xxxxxxxxxxxxxxx000000://ASUBI_U.B
    begin
    $fdisplay(fp,"ASUBI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011111xxxxxxxxxxxxxxx000000://ASUBI_U.D
    begin
    $fdisplay(fp,"ASUBI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010110xxxxxxxxxxxxxxx010010://MSUBV.W
    begin
    $fdisplay(fp,"MSUBV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx010010://AVE_U.W
    begin
    $fdisplay(fp,"AVE_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx011011://MADDR_Q.W
    begin
    $fdisplay(fp,"MADDR_Q.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010111xxxxxxxxxxxxxxx010010://MSUBV.D
    begin
    $fdisplay(fp,"MSUBV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010101xxxxxxxxxxxxxxx000101://SE3L1.H
    begin
    $fdisplay(fp,"SE3L1.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010100xxxxxxxxxxxxxxx010010://MSUBV.B
    begin
    $fdisplay(fp,"MSUBV.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx010010://AVE_U.B
    begin
    $fdisplay(fp,"AVE_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001011xxxxxxxxxxxxxxx010010://AVE_U.D
    begin
    $fdisplay(fp,"AVE_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx010010://AVE_U.H
    begin
    $fdisplay(fp,"AVE_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxx000000000000000010001://MTHI
    begin
    $fdisplay(fp,"MTHI: rs=%d " ,insn[25:21] );
    end
32'b01111001000xxxxxxxxxxxxxxx010110://MVTGR_U.B
    begin
    $fdisplay(fp,"MVTGR_U.B: rt=%d, rd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
default:
    $fdisplay(fp,"RES");
endcase
end
endtask

//============================================================
// asm function
//============================================================
task automatic fxu_sim_display;
input [31:0]  insn;
begin
casex(insn)
32'b01111000001xxxxxxxxxxxxxxx000010://MINI_U.H
    begin
    $display("MINI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001001xxxxxxxxxxxxxxx010101://PCKEV.H
    begin
    $display("PCKEV.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011110xxxxxxxxxxxxxxx010011://BINSL.W
    begin
    $display("BINSL.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000100110xxxxxxxxxx00000000000://CTC1
    begin
    $display("CTC1: rt=%d, fs=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b01111011110xxxxxxxxxxxxxxx000001://MINI_S.W
    begin
    $display("MINI_S.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001000xxxxxxxxxxxxxxx010101://PCKEV.B
    begin
    $display("PCKEV.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx000001://SUBSSI_U.W
    begin
    $display("SUBSSI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000011xxxxxxxxxxxxxxx000010://MINI_U.D
    begin
    $display("MINI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011101xxxxxxxxxxxxxxx000001://MINI_S.H
    begin
    $display("MINI_S.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011101xxxxxxxxxxxxxxx010011://BINSL.H
    begin
    $display("BINSL.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011111xxxxxxxxxxxxxxx000001://MINI_S.D
    begin
    $display("MINI_S.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011111xxxxxxxxxxxxxxx010011://BINSL.D
    begin
    $display("BINSL.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx000010://MINI_U.W
    begin
    $display("MINI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011100xxxxxxxxxxxxxxx010011://BINSL.B
    begin
    $display("BINSL.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011110xxxxxxxxxxxxxxx011011://FMAX_A.W
    begin
    $display("FMAX_A.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx100100://CVT.W.D
    begin
    $display("CVT.W.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx010101://VSHF.D
    begin
    $display("VSHF.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000100xxxxxxxxxxxxxxx010101://VSHF.B
    begin
    $display("VSHF.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx011110://SAT_U.W
    begin
    $display("SAT_U.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01111000001xxxxxxxxxxxxxxx000111://S3IR0.H
    begin
    $display("S3IR0.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx010011://DPADD_U.W
    begin
    $display("DPADD_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000101xxxxxxxxxxxxxxx010101://VSHF.H
    begin
    $display("VSHF.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx010101://VSHF.W
    begin
    $display("VSHF.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxx00000001101://SUXC1
    begin
    $display("SUXC1: index=%d, base=%d, fs=%d " ,insn[20:16] ,insn[25:21] ,insn[15:11] );
    end
32'b01000100011xxxxxxxxxx00000000000://MFHC1
    begin
    $display("MFHC1: rt=%d, fs=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b0111100011110xxxxxxxxxxxxx011110://SAT_U.B
    begin
    $display("SAT_U.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b0111100010xxxxxxxxxxxxxxxx011110://SAT_U.D
    begin
    $display("SAT_U.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b0100011000000000xxxxxxxxxx100100://CVT.W.S
    begin
    $display("CVT.W.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx000010://MINI_U.B
    begin
    $display("MINI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b011110001110xxxxxxxxxxxxxx011110://SAT_U.H
    begin
    $display("SAT_U.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111001011xxxxxxxxxxxxxxx010101://PCKEV.D
    begin
    $display("PCKEV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx010011://DPADD_U.D
    begin
    $display("DPADD_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011101xxxxxxxxxxxxxxx010100://CLT_U.H
    begin
    $display("CLT_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101110000110xxxxxxxxxx001111://PCNT.W
    begin
    $display("PCNT.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx110001://TGEU
    begin
    $display("TGEU: rt=%d, code=%d, rs=%d " ,insn[20:16] ,insn[15: 6] ,insn[25:21] );
    end
32'b0100011000100000xxxxxxxxxx001100://ROUND.W.D
    begin
    $display("ROUND.W.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b000001xxxxx01000xxxxxxxxxxxxxxxx://TGEI
    begin
    $display("TGEI: immediate=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b100101xxxxxxxxxxxxxxxxxxxxxxxxxx://LHU
    begin
    $display("LHU: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b0111101110000100xxxxxxxxxx001111://PCNT.B
    begin
    $display("PCNT.B: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000101xxxxxxxxxxxxxxx001111://BMZ.V
    begin
    $display("BMZ.V: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000000000xxxxxxxxxx001100://ROUND.W.S
    begin
    $display("ROUND.W.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b011100xxxxxxxxxx0000000000000101://MSUBU
    begin
    $display("MSUBU: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b01111011111xxxxxxxxxxxxxxx010100://CLT_U.D
    begin
    $display("CLT_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000001xxxxx01100xxxxxxxxxxxxxxxx://TEQI
    begin
    $display("TEQI: immediate=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01000110110xxxxxxxxxxxxxxx101111://PUU.PS
    begin
    $display("PUU.PS: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001101xxxxxxxxxxxxxxx011011://FADD.D
    begin
    $display("FADD.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011xxxxxxxxxxxxxxxxxx001010://XORI.B
    begin
    $display("XORI.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011000100000xxxxxxxxxx001010://CEIL.L.D
    begin
    $display("CEIL.L.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx010010://MIN_U.W
    begin
    $display("MIN_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000001xxxxx01001xxxxxxxxxxxxxxxx://TGEIU
    begin
    $display("TGEIU: immediate=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111001111xxxxxxxxxxxxxxx010010://MULV.D
    begin
    $display("MULV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx010010://MIN_U.H
    begin
    $display("MIN_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx000100://SQRT.D
    begin
    $display("SQRT.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001100xxxxxxxxxxxxxxx011011://FADD.W
    begin
    $display("FADD.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011111xxxxxxxxxxxxxxx011011://FMAX_A.D
    begin
    $display("FMAX_A.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx011011://MSUBR_Q.H
    begin
    $display("MSUBR_Q.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx010010://MIN_U.B
    begin
    $display("MIN_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000000000xxxxxxxxxx001010://CEIL.L.S
    begin
    $display("CEIL.L.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000011xxxxxxxxxxxxxxx010010://MIN_U.D
    begin
    $display("MIN_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000001xxxxx00000xxxxxxxxxxxxxxxx://BLTZ
    begin
    $display("BLTZ: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010001xxxxxxxxxxxxxxx010000://ADDS_U.H
    begin
    $display("ADDS_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010000xxxxxxxxxxxxxxx010000://ADDS_U.B
    begin
    $display("ADDS_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001110xxxxxxxxxxxxxxx010011://DPSUB_U.W
    begin
    $display("DPSUB_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx010000://ADDS_U.D
    begin
    $display("ADDS_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000101000xxx11xxxxxxxxxxxxxxxx://BC1TL
    begin
    $display("BC1TL: cc=%d, offset=%d " ,insn[20:18] ,insn[15: 0] );
    end
32'b01111001010xxxxxxxxxxxxxxx010101://PCKEV.W
    begin
    $display("PCKEV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010000xxxxxxxxxxxxxxx000000://ADDSI_U.B
    begin
    $display("ADDSI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000100xxxxxxxxxxxxxxxxxxxxxxxxxx://BEQ
    begin
    $display("BEQ: rt=%d, offset=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010010xxxxxxxxxxxxxxx010000://ADDS_U.W
    begin
    $display("ADDS_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001011xxxxxxxxxxxxxxx011011://MSUBR_Q.W
    begin
    $display("MSUBR_Q.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111010010xxxxxxxxxx001111://FFQR.W
    begin
    $display("FFQR.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001100xxxxxxxxxxxxxxx010110://SLDR.B
    begin
    $display("SLDR.B: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101111010001xxxxxxxxxx001111://FFQL.D
    begin
    $display("FFQL.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101111010011xxxxxxxxxx001111://FFQR.D
    begin
    $display("FFQR.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011100xxxxxxxxxxxxxxx000001://MINI_S.B
    begin
    $display("MINI_S.B: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b0111101111010000xxxxxxxxxx001111://FFQL.W
    begin
    $display("FFQL.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01000110110xxx00xxxxxxxxxx010001://MOVF.PS
    begin
    $display("MOVF.PS: cc=%d, fs=%d, fd=%d " ,insn[20:18] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx010000://ADD_A.D
    begin
    $display("ADD_A.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx000000://ADDVI.W
    begin
    $display("ADDVI.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000110xxxxxxxxxxxxxxx000111://S3IR1.W
    begin
    $display("S3IR1.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110000110xxxxxxxxxxxxxx011110://SAT_S.H
    begin
    $display("SAT_S.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111000110xxxxxxxxxxxxxxx001111://BSEL.V
    begin
    $display("BSEL.V: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001101xxxxxxxxxxxxxxx000011://DPSUBI_U.H
    begin
    $display("DPSUBI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111100000xxxxxxxxxx00010100000://WSBH
    begin
    $display("WSBH: rt=%d, rd=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b0111100001110xxxxxxxxxxxxx011110://SAT_S.B
    begin
    $display("SAT_S.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b01111000000xxxxxxxxxxxxxxx000000://ADDVI.B
    begin
    $display("ADDVI.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000100xxxxxxxxxxxxxxx000111://S3IR1.B
    begin
    $display("S3IR1.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000011xxxxxxxxxxxxxxx000000://ADDVI.D
    begin
    $display("ADDVI.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101111000111xxxxxxxxxx001111://FCLASS.D
    begin
    $display("FCLASS.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000101xxxxxxxxxxxxxxx000111://S3IR1.H
    begin
    $display("S3IR1.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx000000://ADDVI.H
    begin
    $display("ADDVI.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b011110100110xxxxxxxxxxxxxx011110://SRLI.H
    begin
    $display("SRLI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111001111xxxxxxxxxxxxxxx000011://DPSUBI_U.D
    begin
    $display("DPSUBI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010111xxxxxxxxxxxxxxx010000://SUBV.D
    begin
    $display("SUBV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000100xxxxxxxxxxxxxxx010000://ADD_A.B
    begin
    $display("ADD_A.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001111xxxxxxxxxxxxxxx010011://DPSUB_U.D
    begin
    $display("DPSUB_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101001110xxxxxxxxxxxxx011110://SRLI.B
    begin
    $display("SRLI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b0111101000xxxxxxxxxxxxxxxx011110://SRLI.D
    begin
    $display("SRLI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b01000010000000000000000000000010://TLBWI
    $display("TLBWI");
32'b000000xxxxx000000000000000010011://MTLO
    begin
    $display("MTLO: rs=%d " ,insn[25:21] );
    end
32'b01111010110xxxxxxxxxxxxxxx010000://SUBV.W
    begin
    $display("SUBV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010010xxxxxxxxxxxxxxx011110://SRLI.W
    begin
    $display("SRLI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b000000xxxxxxxxxxxxxxx00000100111://NOR
    begin
    $display("NOR: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111011001xxxxxxxxxxxxxxx000101://SE3L2.H
    begin
    $display("SE3L2.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx010100://BINSR.H
    begin
    $display("BINSR.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001011xxxxxxxxxxxxxxx010100://BSET.D
    begin
    $display("BSET.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx010100://BSET.B
    begin
    $display("BSET.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011000xxxxxxxxxxxxxxx000101://SE3L2.B
    begin
    $display("SE3L2.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx010100://BINSR.B
    begin
    $display("BINSR.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000011xxxxxxxxxxxxxxx010100://BINSR.D
    begin
    $display("BINSR.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx010100://BSET.H
    begin
    $display("BSET.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx010100://BSET.W
    begin
    $display("BSET.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110001xxxxxxxxxxxxx0011xxxx://C.cond.D
    begin
    $display("C.cond.D: cc=%d, cond=%d, fs=%d, ft=%d " ,insn[10: 8] ,insn[ 3: 0] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000011xxxxxxxxxxxxxxx000001://SUBSI_S.D
    begin
    $display("SUBSI_S.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000101xxxxxxxxxxxxxxx011011://MADD_Q.W
    begin
    $display("MADD_Q.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx010100://BINSR.W
    begin
    $display("BINSR.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx000101://SE3L2.W
    begin
    $display("SE3L2.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101110xxxxxxxxxxxxxxxx011110://BCLRI.D
    begin
    $display("BCLRI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b01111000101xxxxxxxxxxxxxxx010011://DPADD_U.H
    begin
    $display("DPADD_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx011110://ALNV.PS
    begin
    $display("ALNV.PS: fd=%d, fs=%d, ft=%d, rs=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] ,insn[25:21] );
    end
32'b01000110110xxxxxxxxxxxxxxx000000://ADD.PS
    begin
    $display("ADD.PS: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001100xxxxxxxxxxxxxxx000010://MULVI.B
    begin
    $display("MULVI.B: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b101111xxxxxxxxxxxxxxxxxxxxxxxxxx://CACHE
    begin
    $display("CACHE: base=%d, offset=%d, op=%d " ,insn[25:21] ,insn[15: 0] ,insn[20:16] );
    end
32'b01111001111xxxxxxxxxxxxxxx000010://MULVI.D
    begin
    $display("MULVI.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b0111101111010110xxxxxxxxxx001111://FEXUPR.W
    begin
    $display("FEXUPR.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001101xxxxxxxxxxxxxxx000010://MULVI.H
    begin
    $display("MULVI.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001011xxxxxxxxxxxxxxx011100://FCUN.D
    begin
    $display("FCUN.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111110xxxxxxxxxxxxx011110://BCLRI.B
    begin
    $display("BCLRI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b0100011000100000xxxxxxxxxx001101://TRUNC.W.D
    begin
    $display("TRUNC.W.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxx00000xxxxx000101://LUXC1
    begin
    $display("LUXC1: index=%d, base=%d, fd=%d " ,insn[20:16] ,insn[25:21] ,insn[10: 6] );
    end
32'b0111100011111110xxxxxxxxxx011010://CFCMSA
    begin
    $display("CFCMSA: cs=%d, rd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111010111xxxxxxxxxx001111://FEXUPR.D
    begin
    $display("FEXUPR.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001110xxxxxxxxxxxxxxx000010://MULVI.W
    begin
    $display("MULVI.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001111xxxxxxxxxxxxxxx010110://SLDR.D
    begin
    $display("SLDR.D: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxx0000000000011011://DIVU
    begin
    $display("DIVU: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b0100011000000000xxxxxxxxxx001101://TRUNC.W.S
    begin
    $display("TRUNC.W.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b000001xxxxx10011xxxxxxxxxxxxxxxx://BGEZALL
    begin
    $display("BGEZALL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111001001xxxxxxxxxxxxxxx010110://MVTGR_U.H
    begin
    $display("MVTGR_U.H: rt=%d, rd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001001xxxxxxxxxxxxxxx000011://DPSUBI_S.H
    begin
    $display("DPSUBI_S.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001101xxxxxxxxxxxxxxx010110://SLDR.H
    begin
    $display("SLDR.H: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010000xxxxxxxxxxxxxxx011011://FMUL.W
    begin
    $display("FMUL.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001110xxxxxxxxxxxxxxx000011://DPSUBI_U.W
    begin
    $display("DPSUBI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001101xxxxxxxxxxxxxxx001111://ST.V
    begin
    $display("ST.V: wd=%d, s5=%d, rs=%d " ,insn[10: 6] ,insn[20:16] ,insn[15:11] );
    end
32'b01111011111xxxxxxxxxxxxxxx010000://ASUB_U.D
    begin
    $display("ASUB_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b101011xxxxxxxxxxxxxxxxxxxxxxxxxx://SW
    begin
    $display("SW: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01111001011xxxxxxxxxxxxxxx000011://DPSUBI_S.D
    begin
    $display("DPSUBI_S.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01000110110xxxxxxxxxxxxxxx101101://PLU.PS
    begin
    $display("PLU.PS: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b101001xxxxxxxxxxxxxxxxxxxxxxxxxx://SH
    begin
    $display("SH: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01111010001xxxxxxxxxxxxxxx011011://FMUL.D
    begin
    $display("FMUL.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b001101xxxxxxxxxxxxxxxxxxxxxxxxxx://ORI
    begin
    $display("ORI: rt=%d, immediate=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b111000xxxxxxxxxxxxxxxxxxxxxxxxxx://SC
    begin
    $display("SC: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b101000xxxxxxxxxxxxxxxxxxxxxxxxxx://SB
    begin
    $display("SB: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b110001xxxxxxxxxxxxxxxxxxxxxxxxxx://LWC1
    begin
    $display("LWC1: base=%d, ft=%d, offset=%d " ,insn[25:21] ,insn[20:16] ,insn[15: 0] );
    end
32'b01111001010xxxxxxxxxxxxxxx000011://DPSUBI_S.W
    begin
    $display("DPSUBI_S.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011001xxxxxxxxxxxxxxx010100://CLE_S.H
    begin
    $display("CLE_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110001010xxxxxxxxxxxxxx011010://MVTG_S.H
    begin
    $display("MVTG_S.H: rd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[19:16] );
    end
32'b01111000000xxxxxxxxxxxxxxx000101://SE3R0.B
    begin
    $display("SE3R0.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000100xxxxxxxxxxxxxxx011010://MVTG_S.B
    begin
    $display("MVTG_S.B: rd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000001110xxxxxxxxxxxx011010://SLD.D
    begin
    $display("SLD.D: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[17:16] );
    end
32'b01111011010xxxxxxxxxxxxxxx010100://CLE_S.W
    begin
    $display("CLE_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx000001://SUBSSI_U.B
    begin
    $display("SUBSSI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011000000000xxxxxxxxxx001011://FLOOR.L.S
    begin
    $display("FLOOR.L.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110001xxxxxxxxxxxxxxx010010://MOVZ.D
    begin
    $display("MOVZ.D: rt=%d, fs=%d, fd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx000101://SE3R0.W
    begin
    $display("SE3R0.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110001xxxxxxxxxxxxxxx000011://DIV.D
    begin
    $display("DIV.D: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b000001xxxxx11111xxxxxxxxxxxxxxxx://SYNCI
    begin
    $display("SYNCI: base=%d, offset=%d " ,insn[25:21] ,insn[15: 0] );
    end
32'b01111011011xxxxxxxxxxxxxxx010100://CLE_S.D
    begin
    $display("CLE_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx001011://FLOOR.L.D
    begin
    $display("FLOOR.L.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b0111100010110xxxxxxxxxxxxx011010://MVTG_S.W
    begin
    $display("MVTG_S.W: rd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[18:16] );
    end
32'b01111011000xxxxxxxxxxxxxxx010100://CLE_S.B
    begin
    $display("CLE_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111000100xxxxxxxxxx001111://FLOG2.W
    begin
    $display("FLOG2.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001111xxxxxxxxxxxxxxx010001://MAX_A.D
    begin
    $display("MAX_A.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b100000xxxxxxxxxxxxxxxxxxxxxxxxxx://LB
    begin
    $display("LB: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01111011011xxxxxxxxxxxxxxx010000://ASUB_S.D
    begin
    $display("ASUB_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b110000xxxxxxxxxxxxxxxxxxxxxxxxxx://LL
    begin
    $display("LL: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b010011xxxxxxxxxxxxxxx00000001000://SWXC1
    begin
    $display("SWXC1: index=%d, base=%d, fs=%d " ,insn[20:16] ,insn[25:21] ,insn[15:11] );
    end
32'b100001xxxxxxxxxxxxxxxxxxxxxxxxxx://LH
    begin
    $display("LH: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01111001001xxxxxxxxxxxxxxx000001://SUBSSI_U.H
    begin
    $display("SUBSSI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b100011xxxxxxxxxxxxxxxxxxxxxxxxxx://LW
    begin
    $display("LW: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b0111100111110xxxxxxxxxxxxx011110://SRAI.B
    begin
    $display("SRAI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b010011xxxxxxxxxx00000xxxxx000000://LWXC1
    begin
    $display("LWXC1: index=%d, base=%d, fd=%d " ,insn[20:16] ,insn[25:21] ,insn[10: 6] );
    end
32'b01111001111xxxxxxxxxxxxxxx000000://ADDSI_S.D
    begin
    $display("ADDSI_S.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001010xxxxxxxxxxxxxxx011100://FCUN.W
    begin
    $display("FCUN.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011011000000xxxxxxxxxx000101://ABS.PS
    begin
    $display("ABS.PS: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001100xxxxxxxxxxxxxxx001111://LDX.V
    begin
    $display("LDX.V: rt=%d, wd=%d, rs=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001011xxxxxxxxxxxxxxx010000://ADDS_A.D
    begin
    $display("ADDS_A.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx010000://ADDS_A.B
    begin
    $display("ADDS_A.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx000010://AVEI_S.D
    begin
    $display("AVEI_S.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b000001xxxxx00001xxxxxxxxxxxxxxxx://BGEZ
    begin
    $display("BGEZ: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010010xxxxxxxxxxxxxxx000101://SE3L0.W
    begin
    $display("SE3L0.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx010000://ADDS_A.H
    begin
    $display("ADDS_A.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001011xxxxxxxxxxxxxxx000001://SUBSSI_U.D
    begin
    $display("SUBSSI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001010xxxxxxxxxxxxxxx010000://ADDS_A.W
    begin
    $display("ADDS_A.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010001xxxxxxxxxxxxxxx000101://SE3L0.H
    begin
    $display("SE3L0.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001110xxxxxxxxxxxxxxx011110://SRAI.W
    begin
    $display("SRAI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01111001xxxxxxxxxxxxxxxxxx001011://BMZI.B
    begin
    $display("BMZI.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001000xxxxxxxxxxxxxxx010001://SUBSS_U.B
    begin
    $display("SUBSS_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010000xxxxxxxxxxxxxxx000101://SE3L0.B
    begin
    $display("SE3L0.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000100xxxxxxxxxxxxxxx010110://MVTGR_S.B
    begin
    $display("MVTGR_S.B: rt=%d, rd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101110001100xxxxxxxxxx001111://NLZC.B
    begin
    $display("NLZC.B: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001111xxxxxxxxxxxxxxx010000://ADDS_S.D
    begin
    $display("ADDS_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001100xxxxxxxxxxxxxxx010000://ADDS_S.B
    begin
    $display("ADDS_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110011110xxxxxxxxxxxxxx011110://SRAI.H
    begin
    $display("SRAI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111011010xxxxxxxxxxxxxxx000001://MINI_A.W
    begin
    $display("MINI_A.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx101110://MSUB.PS
    begin
    $display("MSUB.PS: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001101xxxxxxxxxxxxxxx010000://ADDS_S.H
    begin
    $display("ADDS_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001110xxxxxxxxxxxxxxx010000://ADDS_S.W
    begin
    $display("ADDS_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010100xxxxxxxxxxxxxxx000111://S3IL1.B
    begin
    $display("S3IL1.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011001xxxxxxxxxxxxxxx000001://MINI_A.H
    begin
    $display("MINI_A.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011011xxxxxxxxxxxxxxx000001://MINI_A.D
    begin
    $display("MINI_A.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011000xxxxxxxxxxxxxxx000001://MINI_A.B
    begin
    $display("MINI_A.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101110000111xxxxxxxxxx001111://PCNT.D
    begin
    $display("PCNT.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b00000000001xxxxxxxxxxxxxxx000010://ROTR
    begin
    $display("ROTR: rt=%d, rd=%d, sa=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011000xxxxxxxxxxxxxxx000111://S3IL2.B
    begin
    $display("S3IL2.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000101xxxxxxxxxxxxxxx010001://SUBS_U.H
    begin
    $display("SUBS_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx000001://SUBSI_U.D
    begin
    $display("SUBSI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01000010000000000000000000011111://DERET
    $display("DERET");
32'b01111000100xxxxxxxxxxxxxxx010001://SUBS_U.B
    begin
    $display("SUBS_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111000011xxxxxxxxxx001111://FRINT.D
    begin
    $display("FRINT.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000100xxxxxxxxxxxxxxx000001://SUBSI_U.B
    begin
    $display("SUBSI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001010xxxxxxxxxxxxxxx010110://MVTGR_U.W
    begin
    $display("MVTGR_U.W: rt=%d, rd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101110000101xxxxxxxxxx001111://PCNT.H
    begin
    $display("PCNT.H: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000110xxxxxxxxxxxxxxx010001://SUBS_U.W
    begin
    $display("SUBS_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx000001://SUBSI_U.W
    begin
    $display("SUBSI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101111000010xxxxxxxxxx001111://FRINT.W
    begin
    $display("FRINT.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01000010000000000000000000000001://TLBR
    $display("TLBR");
32'b01000010000000000000000000001000://TLBP
    $display("TLBP");
32'b000111xxxxx00000xxxxxxxxxxxxxxxx://BGTZ
    begin
    $display("BGTZ: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b100100xxxxxxxxxxxxxxxxxxxxxxxxxx://LBU
    begin
    $display("LBU: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx001100://SYSCALL
    begin
    $display("SYSCALL: t=%d " ,insn[25: 6] );
    end
32'b0111100010111110xxxxxxxxxx011010://CTCMSA
    begin
    $display("CTCMSA: cd=%d, rs=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001010xxxxxxxxxxxxxxx010011://DPSUB_S.W
    begin
    $display("DPSUB_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx010001://SUBS_S.W
    begin
    $display("SUBS_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111100110xxxxxxxxxxxxxxxx011110://SRAI.D
    begin
    $display("SRAI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b01111010000xxxxxxxxxxxxxxx000111://S3IL0.B
    begin
    $display("S3IL0.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx010011://DPSUB_S.H
    begin
    $display("DPSUB_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx010001://SUBS_S.B
    begin
    $display("SUBS_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000011xxxxxxxxxxxxxxx010001://SUBS_S.D
    begin
    $display("SUBS_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001011xxxxxxxxxxxxxxx010011://DPSUB_S.D
    begin
    $display("DPSUB_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx000101://SE3R2.W
    begin
    $display("SE3R2.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx011100://FCLE.W
    begin
    $display("FCLE.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110000110xxxxxxxxxxxxxx011010://MOVE.H
    begin
    $display("MOVE.H: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[19:16] );
    end
32'b01111000011110xxxxxxxxxxxx011010://MOVE.D
    begin
    $display("MOVE.D: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[17:16] );
    end
32'b01111000010xxxxxxxxxxxxxxx011010://MOVE.B
    begin
    $display("MOVE.B: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b010011xxxxxxxxxxxxxxx00000001111://PREFX
    begin
    $display("PREFX: index=%d, base=%d, hint=%d " ,insn[20:16] ,insn[25:21] ,insn[15:11] );
    end
32'b000011xxxxxxxxxxxxxxxxxxxxxxxxxx://JAL
    begin
    $display("JAL: t=%d " ,insn[25: 0] );
    end
32'b01111001110xxxxxxxxxxxxxxx010010://MULV.W
    begin
    $display("MULV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx000101://SE3R2.B
    begin
    $display("SE3R2.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111100001110xxxxxxxxxxxxx011010://MOVE.W
    begin
    $display("MOVE.W: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[18:16] );
    end
32'b0111100001111110xxxxxxxxxx011010://MOVE.V
    begin
    $display("MOVE.V: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001001xxxxxxxxxxxxxxx000101://SE3R2.H
    begin
    $display("SE3R2.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000000000xxxxxxxxxx000100://SQRT.S
    begin
    $display("SQRT.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101110001101xxxxxxxxxx001111://NLZC.H
    begin
    $display("NLZC.H: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b000001xxxxx01110xxxxxxxxxxxxxxxx://TNEI
    begin
    $display("TNEI: immediate=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01000101000xxx10xxxxxxxxxxxxxxxx://BC1FL
    begin
    $display("BC1FL: cc=%d, offset=%d " ,insn[20:18] ,insn[15: 0] );
    end
32'b01111010101xxxxxxxxxxxxxxx010100://CLT_S.H
    begin
    $display("CLT_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000001xxxxx01010xxxxxxxxxxxxxxxx://TLTI
    begin
    $display("TLTI: immediate=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010110xxxxxxxxxxxxxxx000010://MSUBVI.W
    begin
    $display("MSUBVI.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001000xxxxxxxxxxxxxxx000010://AVEI_U.B
    begin
    $display("AVEI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010100xxxxxxxxxxxxxxx010100://CLT_S.B
    begin
    $display("CLT_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx010101://CLE_U.H
    begin
    $display("CLE_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010111xxxxxxxxxxxxxxx010100://CLT_S.D
    begin
    $display("CLT_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx000010://AVEI_U.H
    begin
    $display("AVEI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010111xxxxxxxxxxxxxxx000010://MSUBVI.D
    begin
    $display("MSUBVI.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000100xxxxxxxxxxxxxxx001111://BMNZ.V
    begin
    $display("BMNZ.V: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx000010://AVEI_U.W
    begin
    $display("AVEI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000010xxxxxxxxxxxxxxx010101://CLE_U.W
    begin
    $display("CLE_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010100xxxxxxxxxxxxxxx000010://MSUBVI.B
    begin
    $display("MSUBVI.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b00111100000xxxxxxxxxxxxxxxxxxxxx://LUI
    begin
    $display("LUI: rt=%d, immediate=%d " ,insn[20:16] ,insn[15: 0] );
    end
32'b000000xxxxxxxxxxxxxxx00000100110://XOR
    begin
    $display("XOR: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111010101xxxxxxxxxxxxxxx000010://MSUBVI.H
    begin
    $display("MSUBVI.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b011100xxxxxxxxxx0000000000000100://MSUB
    begin
    $display("MSUB: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b000001xxxxx01011xxxxxxxxxxxxxxxx://TLTIU
    begin
    $display("TLTIU: immediate=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b011100xxxxxxxxxx0000000000000000://MADD
    begin
    $display("MADD: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b01111001010xxxxxxxxxxxxxxx000000://ADDSI_A.W
    begin
    $display("ADDSI_A.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011110xxxxxxxxxxxxxxx010100://CLT_U.W
    begin
    $display("CLT_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx000000://ADDSI_A.B
    begin
    $display("ADDSI_A.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010010xxxxxxxxxxxxxxx000010://MADDVI.W
    begin
    $display("MADDVI.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001011xxxxxxxxxxxxxxx000000://ADDSI_A.D
    begin
    $display("ADDSI_A.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000000xxxxxxxxxxxxxxx010101://CLE_U.B
    begin
    $display("CLE_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx000000://ADDSI_A.H
    begin
    $display("ADDSI_A.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011100xxxxxxxxxxxxxxx010100://CLT_U.B
    begin
    $display("CLT_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx000000://ADDSI_U.D
    begin
    $display("ADDSI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxx00000100011://SUBU
    begin
    $display("SUBU: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01000001011xxxxx0110000000100000://EI
    begin
    $display("EI: rt=%d " ,insn[20:16] );
    end
32'b000001xxxxx00010xxxxxxxxxxxxxxxx://BLTZL
    begin
    $display("BLTZL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b0111101110001010xxxxxxxxxx001111://NLOC.W
    begin
    $display("NLOC.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b000001xxxxx10010xxxxxxxxxxxxxxxx://BLTZALL
    begin
    $display("BLTZALL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010001xxxxxxxxxxxxxxx000000://ADDSI_U.H
    begin
    $display("ADDSI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010010xxxxxxxxxxxxxxx000000://ADDSI_U.W
    begin
    $display("ADDSI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101110001000xxxxxxxxxx001111://NLOC.B
    begin
    $display("NLOC.B: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101110001011xxxxxxxxxx001111://NLOC.D
    begin
    $display("NLOC.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000110xxxxxxxxxxxxxxx010110://MVTGR_S.W
    begin
    $display("MVTGR_S.W: rt=%d, rd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111100000xxxxxxxxxxxxxxxx011110://SAT_S.D
    begin
    $display("SAT_S.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b0111101110001001xxxxxxxxxx001111://NLOC.H
    begin
    $display("NLOC.H: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001101xxxxxxxxxxxxxxx010011://DPSUB_U.H
    begin
    $display("DPSUB_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxx00000001001://SDXC1
    begin
    $display("SDXC1: index=%d, base=%d, fs=%d " ,insn[20:16] ,insn[25:21] ,insn[15:11] );
    end
32'b01111011100xxxxxxxxxxxxxxx010000://ASUB_U.B
    begin
    $display("ASUB_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx010000://ASUB_S.W
    begin
    $display("ASUB_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx000010://AVEI_S.W
    begin
    $display("AVEI_S.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000110xxxxxxxxxxxxxxx011010://MVTG_U.B
    begin
    $display("MVTG_U.B: rd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001110xxxxxxxxxxxxxxx000000://ADDSI_S.W
    begin
    $display("ADDSI_S.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001101xxxxxxxxxxxxxxx010010://MULV.H
    begin
    $display("MULV.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011101xxxxxxxxxxxxxxx010000://ASUB_U.H
    begin
    $display("ASUB_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110001110xxxxxxxxxxxxxx011010://MVTG_U.H
    begin
    $display("MVTG_U.H: rd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[19:16] );
    end
32'b01111000100xxxxxxxxxxxxxxx000010://AVEI_S.B
    begin
    $display("AVEI_S.B: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001100xxxxxxxxxxxxxxx000000://ADDSI_S.B
    begin
    $display("ADDSI_S.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111100011110xxxxxxxxxxxxx011010://MVTG_U.W
    begin
    $display("MVTG_U.W: rd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[18:16] );
    end
32'b01111011110xxxxxxxxxxxxxxx010000://ASUB_U.W
    begin
    $display("ASUB_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110110xxxxxxxxxxxxxxx010011://MOVN.PS
    begin
    $display("MOVN.PS: rt=%d, fs=%d, fd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011000xxxxxxxxxxxxxxx010000://ASUB_S.B
    begin
    $display("ASUB_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001101xxxxxxxxxxxxxxx000000://ADDSI_S.H
    begin
    $display("ADDSI_S.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000101xxxxxxxxxxxxxxx000010://AVEI_S.H
    begin
    $display("AVEI_S.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011001xxxxxxxxxxxxxxx010000://ASUB_S.H
    begin
    $display("ASUB_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx001111://OR.V
    begin
    $display("OR.V: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111010101xxxxxxxxxx001111://FEXUPL.D
    begin
    $display("FEXUPL.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011000000000xxxxxxxxxx001001://TRUNC.L.S
    begin
    $display("TRUNC.L.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx010011://SRL.W
    begin
    $display("SRL.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101110001110xxxxxxxxxx001111://NLZC.W
    begin
    $display("NLZC.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b000001xxxxx10001xxxxxxxxxxxxxxxx://BGEZAL
    begin
    $display("BGEZAL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b0100011000100000xxxxxxxxxx001001://TRUNC.L.D
    begin
    $display("TRUNC.L.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011001xxxxxxxxxxxxxxx010011://SRL.H
    begin
    $display("SRL.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011100xxxxxxxxxxxxxxx00000000010://MUL
    begin
    $display("MUL: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111011011xxxxxxxxxxxxxxx010011://SRL.D
    begin
    $display("SRL.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011000xxxxxxxxxxxxxxx010011://SRL.B
    begin
    $display("SRL.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101110001111xxxxxxxxxx001111://NLZC.D
    begin
    $display("NLZC.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000011xxxxxxxxxxxxxxx011100://FMIN_A.D
    begin
    $display("FMIN_A.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx011011://MUL_Q.W
    begin
    $display("MUL_Q.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111100000xxxxxxxxxx10000100000://SEB
    begin
    $display("SEB: rt=%d, rd=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b01111100000xxxxxxxxxx11000100000://SEH
    begin
    $display("SEH: rt=%d, rd=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b01111000011xxxxxxxxxxxxxxx010000://ADDV.D
    begin
    $display("ADDV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011100xxxxxxxxxxxxxxx00000100001://CLO
    begin
    $display("CLO: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111010110xxxxxxxxxxxxxxx011011://FMADD.W
    begin
    $display("FMADD.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx010000://ADDV.B
    begin
    $display("ADDV.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx111110://NMSUB.PS
    begin
    $display("NMSUB.PS: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000001xxxxxxxxxxxxxxx010000://ADDV.H
    begin
    $display("ADDV.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx000111://S3IR2.H
    begin
    $display("S3IR2.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx010000://ADDV.W
    begin
    $display("ADDV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010111xxxxxxxxxxxxxxx011011://FMADD.D
    begin
    $display("FMADD.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011100xxxxxxxxxxxxxxx00000100000://CLZ
    begin
    $display("CLZ: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111010011xxxxxxxxxxxxxxx000010://MADDVI.D
    begin
    $display("MADDVI.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011011xxxxxxxxxxxxxxx011011://FEXP2.D
    begin
    $display("FEXP2.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000010000000000000000000100000://WAIT
    $display("WAIT");
32'b01111011000xxxxxxxxxxxxxxx000011://CLEI_S.B
    begin
    $display("CLEI_S.B: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000010xxxxxxxxxxxxxxx000100://CLEI_U.W
    begin
    $display("CLEI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011011xxxxxxxxxxxxxxx000011://CLEI_S.D
    begin
    $display("CLEI_S.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011001xxxxxxxxxxxxxxx000011://CLEI_S.H
    begin
    $display("CLEI_S.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx001101://BREAK
    begin
    $display("BREAK: code=%d " ,insn[25: 6] );
    end
32'b01111000011xxxxxxxxxxxxxxx000100://CLEI_U.D
    begin
    $display("CLEI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101111010100xxxxxxxxxx001111://FEXUPL.W
    begin
    $display("FEXUPL.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011010xxxxxxxxxxxxxxx000011://CLEI_S.W
    begin
    $display("CLEI_S.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000000xxxxxxxxxxxxxxx000100://CLEI_U.B
    begin
    $display("CLEI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010010xxxxxxxxxxxxxxx011100://FTQ.H
    begin
    $display("FTQ.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx011100://FMIN_A.W
    begin
    $display("FMIN_A.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx000100://CLEI_U.H
    begin
    $display("CLEI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010000xxxxxxxxxxxxxxx000001://MAXI_S.B
    begin
    $display("MAXI_S.B: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010110xxxxxxxxxxxxxxx000001://MAXI_U.W
    begin
    $display("MAXI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b101010xxxxxxxxxxxxxxxxxxxxxxxxxx://SWL
    begin
    $display("SWL: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01000001011xxxxx0110000000000000://DI
    begin
    $display("DI: rt=%d " ,insn[20:16] );
    end
32'b01111010001xxxxxxxxxxxxxxx000001://MAXI_S.H
    begin
    $display("MAXI_S.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b000001xxxxx10000xxxxxxxxxxxxxxxx://BLTZAL
    begin
    $display("BLTZAL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010111xxxxxxxxxxxxxxx000001://MAXI_U.D
    begin
    $display("MAXI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010010xxxxxxxxxxxxxxx000001://MAXI_S.W
    begin
    $display("MAXI_S.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010100xxxxxxxxxxxxxxx000001://MAXI_U.B
    begin
    $display("MAXI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b101110xxxxxxxxxxxxxxxxxxxxxxxxxx://SWR
    begin
    $display("SWR: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01111010101xxxxxxxxxxxxxxx000001://MAXI_U.H
    begin
    $display("MAXI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxx0000000000011000://MULT
    begin
    $display("MULT: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b01111001100xxxxxxxxxxxxxxx000001://MAXI_A.B
    begin
    $display("MAXI_A.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001111xxxxxxxxxxxxxxx000001://MAXI_A.D
    begin
    $display("MAXI_A.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01000110000xxxxxxxxxxxxxxx100110://CVT.PS.S
    begin
    $display("CVT.PS.S: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011101xxxxxxxxxxxxxxx011011://FMAX.D
    begin
    $display("FMAX.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000101000xxx01xxxxxxxxxxxxxxxx://BC1T
    begin
    $display("BC1T: cc=%d, offset=%d " ,insn[20:18] ,insn[15: 0] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx110010://TLT
    begin
    $display("TLT: rt=%d, code=%d, rs=%d " ,insn[20:16] ,insn[15: 6] ,insn[25:21] );
    end
32'b01111001110xxxxxxxxxxxxxxx000001://MAXI_A.W
    begin
    $display("MAXI_A.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx110000://TGE
    begin
    $display("TGE: rt=%d, code=%d, rs=%d " ,insn[20:16] ,insn[15: 6] ,insn[25:21] );
    end
32'b01000101000xxx00xxxxxxxxxxxxxxxx://BC1F
    begin
    $display("BC1F: cc=%d, offset=%d " ,insn[20:18] ,insn[15: 0] );
    end
32'b0111101101110xxxxxxxxxxxxx011110://BINSRI.B
    begin
    $display("BINSRI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b01111010010xxxxxxxxxxxxxxx010101://ILVL.W
    begin
    $display("ILVL.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010101xxxxxxxxxxxxxxx010101://ILVR.H
    begin
    $display("ILVR.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101100xxxxxxxxxxxxxxxx011110://BINSRI.D
    begin
    $display("BINSRI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b000000xxxxxxxxxxxxxxx00000101010://SLT
    begin
    $display("SLT: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111010100xxxxxxxxxxxxxxx010101://ILVR.B
    begin
    $display("ILVR.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110110110xxxxxxxxxxxxxx011110://BINSRI.H
    begin
    $display("BINSRI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111010111xxxxxxxxxxxxxxx010101://ILVR.D
    begin
    $display("ILVR.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b00000000000xxxxxxxxxxxxxxx000000://SLL
    begin
    $display("SLL: rt=%d, rd=%d, sa=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx010101://ILVL.D
    begin
    $display("ILVL.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx011110://BINSRI.W
    begin
    $display("BINSRI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01111000001xxxxxxxxxxxxxxx010001://SUBS_S.H
    begin
    $display("SUBS_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010000xxxxxxxxxxxxxxx010101://ILVL.B
    begin
    $display("ILVL.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010110xxxxxxxxxxxxxxx010101://ILVR.W
    begin
    $display("ILVR.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010001xxxxxxxxxxxxxxx010101://ILVL.H
    begin
    $display("ILVL.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110001xxxxxxxxxxxxxxx000010://MUL.D
    begin
    $display("MUL.D: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010011xxxxxxxxxxxxxxx011011://FDIV.D
    begin
    $display("FDIV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000100111xxxxxxxxxx00000000000://MTHC1
    begin
    $display("MTHC1: rt=%d, fs=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b01111001101xxxxxxxxxxxxxxx010101://PCKOD.H
    begin
    $display("PCKOD.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001111xxxxxxxxxxxxxxx010101://PCKOD.D
    begin
    $display("PCKOD.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010xxxxxxxxxxxxxxxxxx001011://BSELI.B
    begin
    $display("BSELI.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx101001://MSUB.D
    begin
    $display("MSUB.D: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010010xxxxxxxxxxxxxxx011011://FDIV.W
    begin
    $display("FDIV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110000xxxxxxxxxxxxxxx000010://MUL.S
    begin
    $display("MUL.S: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001110xxxxxxxxxxxxxxx010101://PCKOD.W
    begin
    $display("PCKOD.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx101000://MSUB.S
    begin
    $display("MSUB.S: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010101xxxxxxxxxxxxxxx000111://S3IL1.H
    begin
    $display("S3IL1.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx001110://CEIL.W.D
    begin
    $display("CEIL.W.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxx0000000000xxxxx001000://JR
    begin
    $display("JR: hint=%d, rs=%d " ,insn[10: 6] ,insn[25:21] );
    end
32'b011111xxxxxxxxxxxxxxxxxxxx000000://EXT
    begin
    $display("EXT: rt=%d, sb=%d, sa=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] ,insn[25:21] );
    end
32'b0100011000000000xxxxxxxxxx001110://CEIL.W.S
    begin
    $display("CEIL.W.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000101xxxxxxxxxxxxxxx000001://SUBSI_U.H
    begin
    $display("SUBSI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011000100000xxxxxxxxxx010101://RECIP.D
    begin
    $display("RECIP.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011011000000xxxxxxxxxx000110://MOV.PS
    begin
    $display("MOV.PS: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011110xxxxxxxxxxxxxxx011110://BCLRI.W
    begin
    $display("BCLRI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01111001110xxxxxxxxxxxxxxx010110://SLDR.W
    begin
    $display("SLDR.W: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011000000000xxxxxxxxxx001000://ROUND.L.S
    begin
    $display("ROUND.L.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000101xxxxxxxxxxxxxxx010000://ADD_A.H
    begin
    $display("ADD_A.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx001000://ROUND.L.D
    begin
    $display("ROUND.L.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx010000://ADD_A.W
    begin
    $display("ADD_A.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000000000xxxxxxxxxx010101://RECIP.S
    begin
    $display("RECIP.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01000000100xxxxxxxxxx00000000xxx://MTC0
    begin
    $display("MTC0: rt=%d, rd=%d, sel=%d " ,insn[20:16] ,insn[15:11] ,insn[ 2: 0] );
    end
32'b01000100100xxxxxxxxxx00000000000://MTC1
    begin
    $display("MTC1: rt=%d, fs=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b011110111110xxxxxxxxxxxxxx011110://BCLRI.H
    begin
    $display("BCLRI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111000110xxxxxxxxxxxxxxx011011://MADDR_Q.H
    begin
    $display("MADDR_Q.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx010001://SUBS_U.D
    begin
    $display("SUBS_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000101xxxxxxxxxxxxxxx010110://MVTGR_S.H
    begin
    $display("MVTGR_S.H: rt=%d, rd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010110xxxxxxxxxxxxxxx000111://S3IL1.W
    begin
    $display("S3IL1.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110110xxxxxxxxxxxxxxx101110://PUL.PS
    begin
    $display("PUL.PS: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000011xxxxxxxxxxxxxxx001111://XOR.V
    begin
    $display("XOR.V: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx011110://SAT_S.W
    begin
    $display("SAT_S.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01111001100xxxxxxxxxxxxxxx010010://MULV.B
    begin
    $display("MULV.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000101xxxxxxxxxxxxxxxxxxxxxxxxxx://BNE
    begin
    $display("BNE: rt=%d, offset=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b000000xxxxxxxxxxxxxxx00000100001://ADDU
    begin
    $display("ADDU: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111010011xxxxxxxxxxxxxxx011100://FTQ.W
    begin
    $display("FTQ.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b001010xxxxxxxxxxxxxxxxxxxxxxxxxx://SLTI
    begin
    $display("SLTI: rt=%d, immediate=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b0100011000100000xxxxxxxxxx000110://MOV.D
    begin
    $display("MOV.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011001xxxxxxxxxxxxxxx010101://ILVEV.H
    begin
    $display("ILVEV.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxx00000101011://SLTU
    begin
    $display("SLTU: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b0100011000000000xxxxxxxxxx000110://MOV.S
    begin
    $display("MOV.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b001000xxxxxxxxxxxxxxxxxxxxxxxxxx://ADDI
    begin
    $display("ADDI: rt=%d, immediate=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b01111000100xxxxxxxxxxxxxxx000000://ADDI_A.B
    begin
    $display("ADDI_A.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010001xxxxxxxxxxxxxxx000010://MADDVI.H
    begin
    $display("MADDVI.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000111xxxxxxxxxxxxxxx000000://ADDI_A.D
    begin
    $display("ADDI_A.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010100xxxxxxxxxxxxxxx000101://SE3L1.B
    begin
    $display("SE3L1.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111001000xxxxxxxxxx001111://FTINT_S.W
    begin
    $display("FTINT_S.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000101xxxxxxxxxxxxxxx000000://ADDI_A.H
    begin
    $display("ADDI_A.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010000xxxxxxxxxxxxxxx000010://MADDVI.B
    begin
    $display("MADDVI.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b00000000000000000000000000001111://SYNC
    $display("SYNC");
32'b01111001100xxxxxxxxxxxxxxx011100://FCEQU.W
    begin
    $display("FCEQU.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011100xxxxxxxxxxxxxxx011011://FMAX.W
    begin
    $display("FMAX.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010110xxxxxxxxxxxxxxx000101://SE3L1.W
    begin
    $display("SE3L1.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001xxxxxxxxxxxxxxxxxx001010://ORI.B
    begin
    $display("ORI.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101111001001xxxxxxxxxx001111://FTINT_S.D
    begin
    $display("FTINT_S.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000110xxxxxxxxxxxxxxx000000://ADDI_A.W
    begin
    $display("ADDI_A.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000001xxxxxxxxxxxxxxx010011://DPADD_S.H
    begin
    $display("DPADD_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111100000110xxxxxxxxxxxxx011010://SLD.W
    begin
    $display("SLD.W: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[18:16] );
    end
32'b110101xxxxxxxxxxxxxxxxxxxxxxxxxx://LDC1
    begin
    $display("LDC1: base=%d, ft=%d, offset=%d " ,insn[25:21] ,insn[20:16] ,insn[15: 0] );
    end
32'b01111001101xxxxxxxxxxxxxxx011100://FCEQU.D
    begin
    $display("FCEQU.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001xxxxxxxxxxxxxxxxxx001100://SHF.W
    begin
    $display("SHF.W: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000011xxxxxxxxxxxxxxx010011://DPADD_S.D
    begin
    $display("DPADD_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011xxxxxxxxxxxxxxxxxx001011://SHF.B
    begin
    $display("SHF.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010010xxxxxxxxxxxxxxx000011://CEQI.W
    begin
    $display("CEQI.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000xxxxxxxxxxxxxxxxxx001100://SHF.H
    begin
    $display("SHF.H: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010001xxxxxxxxxxxxxxx010001://MAX_S.H
    begin
    $display("MAX_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010010xxxxxxxxxxxxxxx010100://CEQ.W
    begin
    $display("CEQ.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111000110xxxxxxxxxx001111://FCLASS.W
    begin
    $display("FCLASS.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011000100000xxxxxxxxxx100101://CVT.L.D
    begin
    $display("CVT.L.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001111xxxxxxxxxxxxxxx011011://FSUB.D
    begin
    $display("FSUB.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx110000://NMADD.S
    begin
    $display("NMADD.S: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b0100011000000000xxxxxxxxxx100101://CVT.L.S
    begin
    $display("CVT.L.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx010100://CEQ.D
    begin
    $display("CEQ.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110110xxxxxxxxxxxxxxx101100://PLL.PS
    begin
    $display("PLL.PS: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010000xxxxxxxxxxxxxxx010100://CEQ.B
    begin
    $display("CEQ.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx010001://MAX_S.D
    begin
    $display("MAX_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx001111://NOR.V
    begin
    $display("NOR.V: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001110xxxxxxxxxxxxxxx011011://FSUB.W
    begin
    $display("FSUB.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx110001://NMADD.D
    begin
    $display("NMADD.D: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010001xxxxxxxxxxxxxxx010100://CEQ.H
    begin
    $display("CEQ.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111001010xxxxxxxxxx001111://FFINT_S.W
    begin
    $display("FFINT_S.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxx00000100100://AND
    begin
    $display("AND: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b0111101111001101xxxxxxxxxx001111://FTINT_U.D
    begin
    $display("FTINT_U.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001000xxxxxxxxxxxxxxx000111://S3IR2.B
    begin
    $display("S3IR2.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011000xxxxxxxxxxxxxxx011011://FMSUB.W
    begin
    $display("FMSUB.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010100xxxxxxxxxxxxxxx011100://FEXDO.H
    begin
    $display("FEXDO.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010110xxxxxxxxxxxxxxx000011://CLTI_S.W
    begin
    $display("CLTI_S.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b0111101111001100xxxxxxxxxx001111://FTINT_U.W
    begin
    $display("FTINT_U.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010101xxxxxxxxxxxxxxx011100://FEXDO.W
    begin
    $display("FEXDO.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011001xxxxxxxxxxxxxxx011011://FMSUB.D
    begin
    $display("FMSUB.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011101xxxxxxxxxxxxxxx010001://MIN_S.H
    begin
    $display("MIN_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010000xxxxxxxxxxxxxxx000011://CEQI.B
    begin
    $display("CEQI.B: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010000xxxxxxxxxxxxxxx010010://MADDV.B
    begin
    $display("MADDV.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011110xxxxxxxxxxxxxxx010101://ILVOD.W
    begin
    $display("ILVOD.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx010010://MADDV.D
    begin
    $display("MADDV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010001xxxxxxxxxxxxxxx010010://MADDV.H
    begin
    $display("MADDV.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx010001://MIN_A.W
    begin
    $display("MIN_A.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011100xxxxxxxxxxxxxxx010101://ILVOD.B
    begin
    $display("ILVOD.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010010xxxxxxxxxxxxxxx010010://MADDV.W
    begin
    $display("MADDV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011111xxxxxxxxxxxxxxx010101://ILVOD.D
    begin
    $display("ILVOD.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011101xxxxxxxxxxxxxxx010101://ILVOD.H
    begin
    $display("ILVOD.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxx0000000000011001://MULTU
    begin
    $display("MULTU: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b01111010111xxxxxxxxxxxxxxx000000://SUBVI.D
    begin
    $display("SUBVI.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b011100xxxxxxxxxx0000000000000001://MADDU
    begin
    $display("MADDU: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b01111000010xxxxxxxxxxxxxxx010011://DPADD_S.W
    begin
    $display("DPADD_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b001100xxxxxxxxxxxxxxxxxxxxxxxxxx://ANDI
    begin
    $display("ANDI: rt=%d, immediate=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010011xxxxxxxxxxxxxxx000011://CEQI.D
    begin
    $display("CEQI.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010100xxxxxxxxxxxxxxx000000://SUBVI.B
    begin
    $display("SUBVI.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000101xxxxxxxxxxxxxxx011100://FCEQ.D
    begin
    $display("FCEQ.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx000001://MAXI_S.D
    begin
    $display("MAXI_S.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010101xxxxxxxxxxxxxxx000000://SUBVI.H
    begin
    $display("SUBVI.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001010xxxxxxxxxxxxxxx001110://LDI.W
    begin
    $display("LDI.W: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000xxxxxxxxxxxxxxxxxx001010://ANDI.B
    begin
    $display("ANDI.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001001xxxxxxxxxxxxxxx001110://LDI.H
    begin
    $display("LDI.H: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111010110xxxxxxxxxxxxxxx000000://SUBVI.W
    begin
    $display("SUBVI.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000100xxxxxxxxxxxxxxx011100://FCEQ.W
    begin
    $display("FCEQ.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx001110://LDI.B
    begin
    $display("LDI.B: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111001011xxxxxxxxxxxxxxx001110://LDI.D
    begin
    $display("LDI.D: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b00000000000xxxxxxxxxxxxxxx000011://SRA
    begin
    $display("SRA: rt=%d, rd=%d, sa=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx010010://DOTP_S.W
    begin
    $display("DOTP_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111001011xxxxxxxxxx001111://FFINT_S.D
    begin
    $display("FFINT_S.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111001110xxxxxxxxxxxxxxx001111://STX.V
    begin
    $display("STX.V: rt=%d, wd=%d, rs=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000001xxxxxxxxxxxxxxx011100://FMIN.D
    begin
    $display("FMIN.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010100xxxxxxxxxxxxxxx010000://SUBV.B
    begin
    $display("SUBV.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b00000000000xxxxxxxxxxxxxxx000010://SRL
    begin
    $display("SRL: rt=%d, rd=%d, sa=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx000111://S3IR0.B
    begin
    $display("S3IR0.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011011xxxxxxxxxxxxxxx010010://DOTP_S.D
    begin
    $display("DOTP_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b001110xxxxxxxxxxxxxxxxxxxxxxxxxx://XORI
    begin
    $display("XORI: rt=%d, immediate=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b01111011001xxxxxxxxxxxxxxx010010://DOTP_S.H
    begin
    $display("DOTP_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx011011://MUL_Q.H
    begin
    $display("MUL_Q.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011111xxxxxxxxxxxxxxx010010://DOTP_U.D
    begin
    $display("DOTP_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxx00000xxxxxxxxxx001001://JALR
    begin
    $display("JALR: rd=%d, hint=%d, rs=%d " ,insn[15:11] ,insn[10: 6] ,insn[25:21] );
    end
32'b01000010000000000000000000011000://ERET
    $display("ERET");
32'b01111011011xxxxxxxxxxxxxxx010001://MIN_A.D
    begin
    $display("MIN_A.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx010110://MOVER.W
    begin
    $display("MOVER.W: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b110011xxxxxxxxxxxxxxxxxxxxxxxxxx://PREF
    begin
    $display("PREF: base=%d, offset=%d, hint=%d " ,insn[25:21] ,insn[15: 0] ,insn[20:16] );
    end
32'b01111011101xxxxxxxxxxxxxxx010010://DOTP_U.H
    begin
    $display("DOTP_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010101xxxxxxxxxxxxxxx010000://SUBV.H
    begin
    $display("SUBV.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011110xxxxxxxxxxxxxxx010010://DOTP_U.W
    begin
    $display("DOTP_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxx00000000110://SRLV
    begin
    $display("SRLV: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111000001xxxxxxxxxxxxxxx010110://MOVER.H
    begin
    $display("MOVER.H: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000011xxxxxxxxxxxxxxx010110://MOVER.D
    begin
    $display("MOVER.D: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000000xxxxxxxxxxxxxxx010110://MOVER.B
    begin
    $display("MOVER.B: rt=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01000100010xxxxxxxxxx00000000000://CFC1
    begin
    $display("CFC1: rt=%d, fs=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b011110001110xxxxxxxxxxxxxx011111://BNEGI.H
    begin
    $display("BNEGI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111001110xxxxxxxxxxxxxxx010001://MAX_A.W
    begin
    $display("MAX_A.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111100011110xxxxxxxxxxxxx011111://BNEGI.B
    begin
    $display("BNEGI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b01111001110xxxxxxxxxxxxxxx010100://BNEG.W
    begin
    $display("BNEG.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111100010xxxxxxxxxxxxxxxx011111://BNEGI.D
    begin
    $display("BNEGI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b01000110000xxxxxxxxxxxxxxx010010://MOVZ.S
    begin
    $display("MOVZ.S: rt=%d, fs=%d, fd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001101xxxxxxxxxxxxxxx010100://BNEG.H
    begin
    $display("BNEG.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011011000000xxxxxxxxxx000111://NEG.PS
    begin
    $display("NEG.PS: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001101xxxxxxxxxxxxxxx010001://MAX_A.H
    begin
    $display("MAX_A.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001111xxxxxxxxxxxxxxx010100://BNEG.D
    begin
    $display("BNEG.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxx0000000000011010://DIV
    begin
    $display("DIV: rt=%d, rs=%d " ,insn[20:16] ,insn[25:21] );
    end
32'b011111xxxxxxxxxxxxxxxxxxxx000100://INS
    begin
    $display("INS: rt=%d, sb=%d, sa=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] ,insn[25:21] );
    end
32'b01111001100xxxxxxxxxxxxxxx010001://MAX_A.B
    begin
    $display("MAX_A.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001100xxxxxxxxxxxxxxx010100://BNEG.B
    begin
    $display("BNEG.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx011111://BNEGI.W
    begin
    $display("BNEGI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01000110001xxxxxxxxxxxxxxx010011://MOVN.D
    begin
    $display("MOVN.D: rt=%d, fs=%d, fd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx000111://S3IR2.W
    begin
    $display("S3IR2.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010110xxxxx00000xxxxxxxxxxxxxxxx://BLEZL
    begin
    $display("BLEZL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b0111100100110xxxxxxxxxxxxx011010://MVFGE.W
    begin
    $display("MVFGE.W: rs=%d, wd=%d, n=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b01111000110xxxxxxxxxxxxxxx011100://FCLT.W
    begin
    $display("FCLT.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011001xxxxxxxxxxxxxxx010001://MIN_A.H
    begin
    $display("MIN_A.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx110110://NMADD.PS
    begin
    $display("NMADD.PS: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01000110000xxxxxxxxxxxxxxx010011://MOVN.S
    begin
    $display("MOVN.S: rt=%d, fs=%d, fd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110010010xxxxxxxxxxxxxx011010://MVFGE.H
    begin
    $display("MVFGE.H: rs=%d, wd=%d, n=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111001011xxxxxxxxxxxxxxx001111://LD.V
    begin
    $display("LD.V: wd=%d, s5=%d, rs=%d " ,insn[10: 6] ,insn[20:16] ,insn[15:11] );
    end
32'b01000010000000000000000000000110://TLBWR
    $display("TLBWR");
32'b01111000001xxxxxxxxxxxxxxx000101://SE3R0.H
    begin
    $display("SE3R0.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx011100://FCLT.D
    begin
    $display("FCLT.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx011010://MVFGE.B
    begin
    $display("MVFGE.B: rs=%d, wd=%d, n=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01000110000xxxxxxxxxxxxxxx000000://ADD.S
    begin
    $display("ADD.S: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010001xxxxxxxxxxxxxxx011100://FCLEU.D
    begin
    $display("FCLEU.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110000xxx00xxxxxxxxxx010001://MOVF.S
    begin
    $display("MOVF.S: cc=%d, fs=%d, fd=%d " ,insn[20:18] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000000000xxxxxxxxxx00000000xxx://MFC0
    begin
    $display("MFC0: rt=%d, rd=%d, sel=%d " ,insn[20:16] ,insn[15:11] ,insn[ 2: 0] );
    end
32'b01000100000xxxxxxxxxx00000000000://MFC1
    begin
    $display("MFC1: rt=%d, fs=%d " ,insn[20:16] ,insn[15:11] );
    end
32'b01000110001xxxxxxxxxxxxxxx000000://ADD.D
    begin
    $display("ADD.D: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010000xxxxxxxxxxxxxxx011100://FCLEU.W
    begin
    $display("FCLEU.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110001xxx00xxxxxxxxxx010001://MOVF.D
    begin
    $display("MOVF.D: cc=%d, fs=%d, fd=%d " ,insn[20:18] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx011100://FCLE.D
    begin
    $display("FCLE.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx011110://SHLI.W
    begin
    $display("SHLI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b0100011000000000xxxxxxxxxx100001://CVT.D.S
    begin
    $display("CVT.D.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010010xxxxxxxxxxxxxxx010110://MVFGER.W
    begin
    $display("MVFGER.W: rt=%d, wd=%d, rs=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011010000000xxxxxxxxxx100001://CVT.D.W
    begin
    $display("CVT.D.W: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b0111100101110xxxxxxxxxxxxx011110://SHLI.B
    begin
    $display("SHLI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b01111010001xxxxxxxxxxxxxxx010110://MVFGER.H
    begin
    $display("MVFGER.H: rt=%d, wd=%d, rs=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111100100xxxxxxxxxxxxxxxx011110://SHLI.D
    begin
    $display("SHLI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b0100011010100000xxxxxxxxxx100001://CVT.D.L
    begin
    $display("CVT.D.L: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001101xxxxxxxxxxxxxxx000001://MAXI_A.H
    begin
    $display("MAXI_A.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b011110010110xxxxxxxxxxxxxx011110://SHLI.H
    begin
    $display("SHLI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111010000xxxxxxxxxxxxxxx010110://MVFGER.B
    begin
    $display("MVFGER.B: rt=%d, wd=%d, rs=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxx00000001011://MOVN
    begin
    $display("MOVN: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b0111101110000010xxxxxxxxxx001111://MVFG.W
    begin
    $display("MVFG.W: wd=%d, rs=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxx00xxxxx00000000001://MOVF
    begin
    $display("MOVF: cc=%d, rd=%d, rs=%d " ,insn[20:18] ,insn[15:11] ,insn[25:21] );
    end
32'b01000110000xxxxxxxxxxxxx0011xxxx://C.cond.S
    begin
    $display("C.cond.S: cc=%d, cond=%d, fs=%d, ft=%d " ,insn[10: 8] ,insn[ 3: 0] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000100xxxxxxxxxxxxxxx000101://SE3R1.B
    begin
    $display("SE3R1.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxx00000001010://MOVZ
    begin
    $display("MOVZ: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b0111101110000000xxxxxxxxxx001111://MVFG.B
    begin
    $display("MVFG.B: wd=%d, rs=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000100xxxxxxxxxxxxxxx011011://MADD_Q.H
    begin
    $display("MADD_Q.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxx01xxxxx00000000001://MOVT
    begin
    $display("MOVT: cc=%d, rd=%d, rs=%d " ,insn[20:18] ,insn[15:11] ,insn[25:21] );
    end
32'b01111000xxxxxxxxxxxxxxxxxx001011://BMNZI.B
    begin
    $display("BMNZI.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111101110000001xxxxxxxxxx001111://MVFG.H
    begin
    $display("MVFG.H: wd=%d, rs=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b010101xxxxxxxxxxxxxxxxxxxxxxxxxx://BNEL
    begin
    $display("BNEL: rt=%d, offset=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b0111101011110xxxxxxxxxxxxx011110://BINSLI.B
    begin
    $display("BINSLI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b0111101010xxxxxxxxxxxxxxxx011110://BINSLI.D
    begin
    $display("BINSLI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b011110101110xxxxxxxxxxxxxx011110://BINSLI.H
    begin
    $display("BINSLI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b0100011000000000xxxxxxxxxx010110://RSQRT.S
    begin
    $display("RSQRT.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxx00000xxxxx000001://LDXC1
    begin
    $display("LDXC1: index=%d, base=%d, fd=%d " ,insn[20:16] ,insn[25:21] ,insn[10: 6] );
    end
32'b01111010110xxxxxxxxxxxxxxx011110://BINSLI.W
    begin
    $display("BINSLI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01111000101xxxxxxxxxxxxxxx000101://SE3R1.H
    begin
    $display("SE3R1.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx010110://RSQRT.D
    begin
    $display("RSQRT.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010010xxxxxxxxxxxxxxx010011://SHL.W
    begin
    $display("SHL.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010001xxxxxxxxxxxxxxx010011://SHL.H
    begin
    $display("SHL.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010011xxxxxxxxxxxxxxx010011://SHL.D
    begin
    $display("SHL.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx000011://DPADDI_S.H
    begin
    $display("DPADDI_S.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010000xxxxxxxxxxxxxxx010011://SHL.B
    begin
    $display("SHL.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx001111://FLOOR.W.D
    begin
    $display("FLOOR.W.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx000011://DPADDI_U.W
    begin
    $display("DPADDI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000000xxxxxxxxxxxxxxx000001://SUBSI_S.B
    begin
    $display("SUBSI_S.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000011xxxxxxxxxxxxxxx000011://DPADDI_S.D
    begin
    $display("DPADDI_S.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000010xxxxxxxxxxxxxxx001110://BNZ.W
    begin
    $display("BNZ.W: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx001111://BNZ.V
    begin
    $display("BNZ.V: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b0100011011000000xxxxxxxxxx101000://CVT.S.PL
    begin
    $display("CVT.S.PL: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx000111://S3IL2.W
    begin
    $display("S3IL2.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011001xxxxxxxxxxxxxxx000111://S3IL2.H
    begin
    $display("S3IL2.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000000000xxxxxxxxxx001111://FLOOR.W.S
    begin
    $display("FLOOR.W.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx001110://BNZ.H
    begin
    $display("BNZ.H: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx000011://DPADDI_U.D
    begin
    $display("DPADDI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0100011011000000xxxxxxxxxx100000://CVT.S.PU
    begin
    $display("CVT.S.PU: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000011xxxxxxxxxxxxxxx001110://BNZ.D
    begin
    $display("BNZ.D: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000101xxxxxxxxxxxxxxx000011://DPADDI_U.H
    begin
    $display("DPADDI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000010xxxxxxxxxxxxxxx000011://DPADDI_S.W
    begin
    $display("DPADDI_S.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxx00000100101://OR
    begin
    $display("OR: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111000000xxxxxxxxxxxxxxx001110://BNZ.B
    begin
    $display("BNZ.B: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxx00000000100://SLLV
    begin
    $display("SLLV: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111000110xxxxxxxxxxxxxxx000101://SE3R1.W
    begin
    $display("SE3R1.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000010xxxxxxxxxxxxxxx000001://SUBSI_S.W
    begin
    $display("SUBSI_S.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01000110000xxx01xxxxxxxxxx010001://MOVT.S
    begin
    $display("MOVT.S: cc=%d, fs=%d, fd=%d " ,insn[20:18] ,insn[15:11] ,insn[10: 6] );
    end
32'b0000000000000000xxxxx00000010000://MFHI
    begin
    $display("MFHI: rd=%d " ,insn[15:11] );
    end
32'b01111010101xxxxxxxxxxxxxxx010011://SRA.H
    begin
    $display("SRA.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010111xxxxx00000xxxxxxxxxxxxxxxx://BGTZL
    begin
    $display("BGTZL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx100110://MADD.PS
    begin
    $display("MADD.PS: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b000000xxxxxxxxxxxxxxx00001000110://ROTRV
    begin
    $display("ROTRV: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111000101xxxxxxxxxxxxxxx001110://BZ.H
    begin
    $display("BZ.H: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000001xxxxxxxxxxxxxxx000001://SUBSI_S.H
    begin
    $display("SUBSI_S.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000100xxxxxxxxxxxxxxx001110://BZ.B
    begin
    $display("BZ.B: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx010100://BCLR.W
    begin
    $display("BCLR.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx001110://BZ.D
    begin
    $display("BZ.D: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000101xxxxxxxxxxxxxxx010100://BCLR.H
    begin
    $display("BCLR.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000100xxxxxxxxxxxxxxx010100://BCLR.B
    begin
    $display("BCLR.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx001111://BZ.V
    begin
    $display("BZ.V: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000110xxxxxxxxxxxxxxx001110://BZ.W
    begin
    $display("BZ.W: s10=%d, wd=%d " ,insn[20:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx010100://BCLR.D
    begin
    $display("BCLR.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111001111xxxxxxxxxx001111://FFINT_U.D
    begin
    $display("FFINT_U.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000010xxxxxxxxxxxxxxx011111://BSETI.W
    begin
    $display("BSETI.W: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[20:16] );
    end
32'b01111011110xxxxxxxxxxxxxxx000011://CLTI_U.W
    begin
    $display("CLTI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011010xxxxxxxxxxxxxxx010101://ILVEV.W
    begin
    $display("ILVEV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011100xxxxxxxxxxxxxxx000011://CLTI_U.B
    begin
    $display("CLTI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b0111100000xxxxxxxxxxxxxxxx011111://BSETI.D
    begin
    $display("BSETI.D: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[21:16] );
    end
32'b0111101111001110xxxxxxxxxx001111://FFINT_U.W
    begin
    $display("FFINT_U.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b0111100001110xxxxxxxxxxxxx011111://BSETI.B
    begin
    $display("BSETI.B: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[18:16] );
    end
32'b01111010100xxxxxxxxxxxxxxx000011://CLTI_S.B
    begin
    $display("CLTI_S.B: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011111xxxxxxxxxxxxxxx000011://CLTI_U.D
    begin
    $display("CLTI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000000xxxxxxxxxxxxxxx011100://FMIN.W
    begin
    $display("FMIN.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011101xxxxxxxxxxxxxxx000011://CLTI_U.H
    begin
    $display("CLTI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011011xxxxxxxxxxxxxxx010101://ILVEV.D
    begin
    $display("ILVEV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011000xxxxxxxxxxxxxxx010101://ILVEV.B
    begin
    $display("ILVEV.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110000110xxxxxxxxxxxxxx011111://BSETI.H
    begin
    $display("BSETI.H: ws=%d, wd=%d, m=%d " ,insn[15:11] ,insn[10: 6] ,insn[19:16] );
    end
32'b01111010100xxxxxxxxxxxxxxx010001://MAX_U.B
    begin
    $display("MAX_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx111001://NMSUB.D
    begin
    $display("NMSUB.D: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b0111101111000101xxxxxxxxxx001111://FLOG2.D
    begin
    $display("FLOG2.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000011xxxxxxxxxxxxxxx011011://MULR_Q.W
    begin
    $display("MULR_Q.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010111xxxxxxxxxxxxxxx010001://MAX_U.D
    begin
    $display("MAX_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b111101xxxxxxxxxxxxxxxxxxxxxxxxxx://SDC1
    begin
    $display("SDC1: base=%d, ft=%d, offset=%d " ,insn[25:21] ,insn[20:16] ,insn[15: 0] );
    end
32'b01111010101xxxxxxxxxxxxxxx010001://MAX_U.H
    begin
    $display("MAX_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx010001://SUBSS_U.W
    begin
    $display("SUBSS_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b111001xxxxxxxxxxxxxxxxxxxxxxxxxx://SWC1
    begin
    $display("SWC1: base=%d, ft=%d, offset=%d " ,insn[25:21] ,insn[20:16] ,insn[15: 0] );
    end
32'b01000110110xxx01xxxxxxxxxx010001://MOVT.PS
    begin
    $display("MOVT.PS: cc=%d, fs=%d, fd=%d " ,insn[20:18] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx010001://SUBSS_U.H
    begin
    $display("SUBSS_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010110xxxxxxxxxxxxxxx010001://MAX_U.W
    begin
    $display("MAX_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx111000://NMSUB.S
    begin
    $display("NMSUB.S: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01000110000xxxxxxxxxxxxxxx000011://DIV.S
    begin
    $display("DIV.S: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000010xxxxxxxxxxxxxxx011011://MULR_Q.H
    begin
    $display("MULR_Q.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001011xxxxxxxxxxxxxxx010001://SUBSS_U.D
    begin
    $display("SUBSS_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110110xxxxxxxxxxxxx0011xxxx://C.cond.PS
    begin
    $display("C.cond.PS: cc=%d, cond=%d, fs=%d, ft=%d " ,insn[10: 8] ,insn[ 3: 0] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010001xxxxxxxxxxxxxxx000111://S3IL0.H
    begin
    $display("S3IL0.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxx00000100010://SUB
    begin
    $display("SUB: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111001011xxxxxxxxxxxxxxx000010://AVEI_U.D
    begin
    $display("AVEI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011110xxxxxxxxxxxxxxx000010://DOTPI_U.W
    begin
    $display("DOTPI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010111xxxxxxxxxxxxxxx010011://SRA.D
    begin
    $display("SRA.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010100xxxxxxxxxxxxxxx010011://SRA.B
    begin
    $display("SRA.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000110xxxxx00000xxxxxxxxxxxxxxxx://BLEZ
    begin
    $display("BLEZ: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b000001xxxxx00011xxxxxxxxxxxxxxxx://BGEZL
    begin
    $display("BGEZL: offset=%d, rs=%d " ,insn[15: 0] ,insn[25:21] );
    end
32'b01111011101xxxxxxxxxxxxxxx000010://DOTPI_U.H
    begin
    $display("DOTPI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010110xxxxxxxxxxxxxxx010011://SRA.W
    begin
    $display("SRA.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011111xxxxxxxxxxxxxxx000010://DOTPI_U.D
    begin
    $display("DOTPI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010010xxxxxxxxxxxxxxx000111://S3IL0.W
    begin
    $display("S3IL0.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx000101://ABS.D
    begin
    $display("ABS.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx011011://MSUB_Q.W
    begin
    $display("MSUB_Q.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011011xxxxxxxxxxxxxxx000010://DOTPI_S.D
    begin
    $display("DOTPI_S.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011001xxxxxxxxxxxxxxx000010://DOTPI_S.H
    begin
    $display("DOTPI_S.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000011xxxxxxxxxxxxxxx010101://CLE_U.D
    begin
    $display("CLE_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx000010://DOTPI_S.W
    begin
    $display("DOTPI_S.W: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111011100xxxxxxxxxxxxxxx010001://MIN_S.B
    begin
    $display("MIN_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010xxxxxxxxxxxxxxxxxx001010://NORI.B
    begin
    $display("NORI.B: i8=%d, wd=%d, ws=%d " ,insn[23:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx110100://TEQ
    begin
    $display("TEQ: rt=%d, code=%d, rs=%d " ,insn[20:16] ,insn[15: 6] ,insn[25:21] );
    end
32'b01111001000xxxxxxxxxxxxxxx011011://MSUB_Q.H
    begin
    $display("MSUB_Q.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011010xxxxxxxxxxxxxxx000000://ASUBI_S.W
    begin
    $display("ASUBI_S.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx100000://MADD.S
    begin
    $display("MADD.S: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b0100011000000000xxxxxxxxxx000111://NEG.S
    begin
    $display("NEG.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110110xxxxxxxxxxxxxxx010010://MOVZ.PS
    begin
    $display("MOVZ.PS: rt=%d, fs=%d, fd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000010xxxxxxxxxxxxxxxxxxxxxxxxxx://J
    begin
    $display("J: t=%d " ,insn[25: 0] );
    end
32'b0100011000100000xxxxxxxxxx000111://NEG.D
    begin
    $display("NEG.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxx00000100000://ADD
    begin
    $display("ADD: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111011011xxxxxxxxxxxxxxx000000://ASUBI_S.D
    begin
    $display("ASUBI_S.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011000xxxxxxxxxxxxxxx000000://ASUBI_S.B
    begin
    $display("ASUBI_S.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b010011xxxxxxxxxxxxxxxxxxxx100001://MADD.D
    begin
    $display("MADD.D: fd=%d, fr=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[25:21] ,insn[15:11] ,insn[20:16] );
    end
32'b01111010101xxxxxxxxxxxxxxx010010://MSUBV.H
    begin
    $display("MSUBV.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011001xxxxxxxxxxxxxxx000000://ASUBI_S.H
    begin
    $display("ASUBI_S.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011110xxxxxxxxxxxxxxx010001://MIN_S.W
    begin
    $display("MIN_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110000xxxxxxxxxxxxxxx000001://SUB.S
    begin
    $display("SUB.S: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b001011xxxxxxxxxxxxxxxxxxxxxxxxxx://SLTIU
    begin
    $display("SLTIU: rt=%d, immediate=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010010xxxxxxxxxxxxxxx010001://MAX_S.W
    begin
    $display("MAX_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001111xxxxxxxxxxxxxxx011100://FCLTU.D
    begin
    $display("FCLTU.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b011110000010xxxxxxxxxxxxxx011010://SLD.H
    begin
    $display("SLD.H: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[19:16] );
    end
32'b01111011111xxxxxxxxxxxxxxx010001://MIN_S.D
    begin
    $display("MIN_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01000110001xxxxxxxxxxxxxxx000001://SUB.D
    begin
    $display("SUB.D: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01000110110xxxxxxxxxxxxxxx000001://SUB.PS
    begin
    $display("SUB.PS: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000000xxxxxxxxxxxxxxx011010://SLD.B
    begin
    $display("SLD.B: wd=%d, ws=%d, n=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111001110xxxxxxxxxxxxxxx011100://FCLTU.W
    begin
    $display("FCLTU.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010000xxxxxxxxxxxxxxx010001://MAX_S.B
    begin
    $display("MAX_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b010100xxxxxxxxxxxxxxxxxxxxxxxxxx://BEQL
    begin
    $display("BEQL: rt=%d, offset=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b01111011010xxxxxxxxxxxxxxx011011://FEXP2.W
    begin
    $display("FEXP2.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111000000xxxxxxxxxx001111://FSQRT.W
    begin
    $display("FSQRT.W: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b01000110110xxxxxxxxxxxxxxx000010://MUL.PS
    begin
    $display("MUL.PS: fd=%d, fs=%d, ft=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b0000000000000000xxxxx00000010010://MFLO
    begin
    $display("MFLO: rd=%d " ,insn[15:11] );
    end
32'b100110xxxxxxxxxxxxxxxxxxxxxxxxxx://LWR
    begin
    $display("LWR: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01111001100xxxxxxxxxxxxxxx010101://PCKOD.B
    begin
    $display("PCKOD.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010001xxxxxxxxxxxxxxx000011://CEQI.H
    begin
    $display("CEQI.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b0100011010000000xxxxxxxxxx100000://CVT.S.W
    begin
    $display("CVT.S.W: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b0111101111000001xxxxxxxxxx001111://FSQRT.D
    begin
    $display("FSQRT.D: wd=%d, ws=%d " ,insn[10: 6] ,insn[15:11] );
    end
32'b000000xxxxxxxxxxxxxxx00000000111://SRAV
    begin
    $display("SRAV: rt=%d, rd=%d, rs=%d " ,insn[20:16] ,insn[15:11] ,insn[25:21] );
    end
32'b01111000010xxxxxxxxxxxxxxx000111://S3IR0.W
    begin
    $display("S3IR0.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011010100000xxxxxxxxxx100000://CVT.S.L
    begin
    $display("CVT.S.L: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b100010xxxxxxxxxxxxxxxxxxxxxxxxxx://LWL
    begin
    $display("LWL: rt=%d, base=%d, offset=%d " ,insn[20:16] ,insn[25:21] ,insn[15: 0] );
    end
32'b01111011000xxxxxxxxxxxxxxx010001://MIN_A.B
    begin
    $display("MIN_A.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000100000xxxxxxxxxx100000://CVT.S.D
    begin
    $display("CVT.S.D: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx110011://TLTU
    begin
    $display("TLTU: rt=%d, code=%d, rs=%d " ,insn[20:16] ,insn[15: 6] ,insn[25:21] );
    end
32'b01000110001xxx01xxxxxxxxxx010001://MOVT.D
    begin
    $display("MOVT.D: cc=%d, fs=%d, fd=%d " ,insn[20:18] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010110xxxxxxxxxxxxxxx010100://CLT_S.W
    begin
    $display("CLT_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b001001xxxxxxxxxxxxxxxxxxxxxxxxxx://ADDIU
    begin
    $display("ADDIU: rt=%d, immediate=%d, rs=%d " ,insn[20:16] ,insn[15: 0] ,insn[25:21] );
    end
32'b01111010101xxxxxxxxxxxxxxx000011://CLTI_S.H
    begin
    $display("CLTI_S.H: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000101xxxxxxxxxxxxxxx010010://AVE_S.H
    begin
    $display("AVE_S.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000000xxxxxxxxxxxxxxx001111://AND.V
    begin
    $display("AND.V: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010111xxxxxxxxxxxxxxx000011://CLTI_S.D
    begin
    $display("CLTI_S.D: wd=%d, ws=%d, s5=%d " ,insn[10: 6] ,insn[15:11] ,insn[20:16] );
    end
32'b01111000111xxxxxxxxxxxxxxx010010://AVE_S.D
    begin
    $display("AVE_S.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b0100011000000000xxxxxxxxxx000101://ABS.S
    begin
    $display("ABS.S: fs=%d, fd=%d " ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011110xxxxxxxxxxxxxxx000000://ASUBI_U.W
    begin
    $display("ASUBI_U.W: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000100xxxxxxxxxxxxxxx010010://AVE_S.B
    begin
    $display("AVE_S.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxxxxxxxxxxxxxxxxx110110://TNE
    begin
    $display("TNE: rt=%d, code=%d, rs=%d " ,insn[20:16] ,insn[15: 6] ,insn[25:21] );
    end
32'b01111011101xxxxxxxxxxxxxxx000000://ASUBI_U.H
    begin
    $display("ASUBI_U.H: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111000110xxxxxxxxxxxxxxx010010://AVE_S.W
    begin
    $display("AVE_S.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111011100xxxxxxxxxxxxxxx000000://ASUBI_U.B
    begin
    $display("ASUBI_U.B: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111011111xxxxxxxxxxxxxxx000000://ASUBI_U.D
    begin
    $display("ASUBI_U.D: u5=%d, wd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
32'b01111010110xxxxxxxxxxxxxxx010010://MSUBV.W
    begin
    $display("MSUBV.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001010xxxxxxxxxxxxxxx010010://AVE_U.W
    begin
    $display("AVE_U.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111000111xxxxxxxxxxxxxxx011011://MADDR_Q.W
    begin
    $display("MADDR_Q.W: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010111xxxxxxxxxxxxxxx010010://MSUBV.D
    begin
    $display("MSUBV.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010101xxxxxxxxxxxxxxx000101://SE3L1.H
    begin
    $display("SE3L1.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111010100xxxxxxxxxxxxxxx010010://MSUBV.B
    begin
    $display("MSUBV.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001000xxxxxxxxxxxxxxx010010://AVE_U.B
    begin
    $display("AVE_U.B: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001011xxxxxxxxxxxxxxx010010://AVE_U.D
    begin
    $display("AVE_U.D: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b01111001001xxxxxxxxxxxxxxx010010://AVE_U.H
    begin
    $display("AVE_U.H: wt=%d, ws=%d, wd=%d " ,insn[20:16] ,insn[15:11] ,insn[10: 6] );
    end
32'b000000xxxxx000000000000000010001://MTHI
    begin
    $display("MTHI: rs=%d " ,insn[25:21] );
    end
32'b01111001000xxxxxxxxxxxxxxx010110://MVTGR_U.B
    begin
    $display("MVTGR_U.B: rt=%d, rd=%d, ws=%d " ,insn[20:16] ,insn[10: 6] ,insn[15:11] );
    end
default:
    $display("RES");
endcase
end
endtask

//============================================================
// build by build_insn_ucode
// ucode asm enumerate
//============================================================
typedef enum {
    UCODE_NOP,
    UCODE_MIN_U_H  ,
    UCODE_PCKEV_H  ,
    UCODE_BINSL_W  ,
    UCODE_MIN_U_B  ,
    UCODE_MIN_S_W  ,
    UCODE_PCKEV_B  ,
    UCODE_MVTG_S_H ,
    UCODE_MIN_U_D  ,
    UCODE_MIN_S_H  ,
    UCODE_BINSL_H  ,
    UCODE_MIN_S_D  ,
    UCODE_BINSL_D  ,
    UCODE_MIN_U_W  ,
    UCODE_BINSL_B  ,
    UCODE_MIN_S_B  ,
    UCODE_CVT_W_D  ,
    UCODE_VSHF_D   ,
    UCODE_VSHF_B   ,
    UCODE_SAT_U_W  ,
    UCODE_DPADD_U_W,
    UCODE_VSHF_H   ,
    UCODE_VSHF_W   ,
    UCODE_SDXC1    ,
    UCODE_DPADD_U_H,
    UCODE_SAT_U_B  ,
    UCODE_SAT_U_D  ,
    UCODE_CVT_W_S  ,
    UCODE_SUB_D    ,
    UCODE_SAT_U_H  ,
    UCODE_PCKEV_D  ,
    UCODE_DPADD_U_D,
    UCODE_ADDS_A_D ,
    UCODE_PCNT_W   ,
    UCODE_ROUND_W_D,
    UCODE_SRA_H    ,
    UCODE_PCNT_B   ,
    UCODE_PCNT_D   ,
    UCODE_ROUND_W_S,
    UCODE_SRA_B    ,
    UCODE_ADDS_A_H ,
    UCODE_MULV_W   ,
    UCODE_FMAX_A_W ,
    UCODE_FADD_D   ,
    UCODE_XOR_B    ,
    UCODE_CEIL_L_D ,
    UCODE_MULV_D   ,
    UCODE_SQRT_D   ,
    UCODE_FADD_W   ,
    UCODE_FMAX_A_D ,
    UCODE_MSUBR_Q_H,
    UCODE_MULV_H   ,
    UCODE_FEXUPL_D ,
    UCODE_ADDS_U_H ,
    UCODE_ADDS_U_B ,
    UCODE_DPSUB_U_W,
    UCODE_ADDS_U_D ,
    UCODE_FEXUPL_W ,
    UCODE_PCKEV_W  ,
    UCODE_ADDS_U_W ,
    UCODE_SWC1     ,
    UCODE_FFQR_W   ,
    UCODE_SLDR_B   ,
    UCODE_S3IL2_B  ,
    UCODE_FFQL_D   ,
    UCODE_FFQR_D   ,
    UCODE_FFQL_W   ,
    UCODE_MOVF_PS  ,
    UCODE_ADD_A_D  ,
    UCODE_DPADD_S_H,
    UCODE_S3IR1_W  ,
    UCODE_SAT_S_H  ,
    UCODE_DPADD_S_D,
    UCODE_FCLASS_W ,
    UCODE_SAT_S_B  ,
    UCODE_ADDV_B   ,
    UCODE_S3IR1_B  ,
    UCODE_ADDV_D   ,
    UCODE_FCLASS_D ,
    UCODE_S3IR1_H  ,
    UCODE_DPADD_S_W,
    UCODE_SUBV_B   ,
    UCODE_LW       ,
    UCODE_SUBV_D   ,
    UCODE_ROUND_L_S,
    UCODE_DPSUB_U_D,
    UCODE_SUBV_H   ,
    UCODE_SRL_D    ,
    UCODE_SUBV_W   ,
    UCODE_CFC1     ,
    UCODE_SRL_W    ,
    UCODE_SE3L2_H  ,
    UCODE_BINSR_H  ,
    UCODE_BSET_D   ,
    UCODE_SUBS_S_W ,
    UCODE_SE3L2_B  ,
    UCODE_BINSR_B  ,
    UCODE_BINSR_D  ,
    UCODE_BSET_H   ,
    UCODE_SUBS_S_B ,
    UCODE_COND_D   ,
    UCODE_SUBS_S_D ,
    UCODE_MADD_Q_W ,
    UCODE_BINSR_W  ,
    UCODE_SE3L2_W  ,
    UCODE_BCLR_D   ,
    UCODE_MFHC1    ,
    UCODE_ALNV_PS  ,
    UCODE_ADD_PS   ,
    UCODE_MULV_B   ,
    UCODE_BNEG_W   ,
    UCODE_FEXUPR_W ,
    UCODE_BNEG_D   ,
    UCODE_BCLR_B   ,
    UCODE_TRUNC_W_D,
    UCODE_LD       ,
    UCODE_CFCMSA   ,
    UCODE_FEXUPR_D ,
    UCODE_SLDR_D   ,
    UCODE_TRUNC_W_S,
    UCODE_MVTGR_U_H,
    UCODE_DPSUB_S_H,
    UCODE_FMUL_W   ,
    UCODE_STV      ,
    UCODE_ASUB_U_D ,
    UCODE_DPSUB_S_D,
    UCODE_ASUB_U_B ,
    UCODE_PLU_PS   ,
    UCODE_FMUL_D   ,
    UCODE_DPSUB_U_H,
    UCODE_DPSUB_S_W,
    UCODE_SUBSS_U_W,
    UCODE_SE3R0_B  ,
    UCODE_MVTG_S_B ,
    UCODE_SLD_D    ,
    UCODE_CLE_S_W  ,
    UCODE_FLOOR_L_S,
    UCODE_SUBSS_U_D,
    UCODE_SE3R0_W  ,
    UCODE_CLE_S_H  ,
    UCODE_SUBSS_U_B,
    UCODE_CLE_S_D  ,
    UCODE_FLOOR_L_D,
    UCODE_SUBSS_U_H,
    UCODE_CLE_S_B  ,
    UCODE_MOVT_PS  ,
    UCODE_AVE_S_B  ,
    UCODE_SWXC1    ,
    UCODE_MVTG_S_W ,
    UCODE_ASUB_U_W ,
    UCODE_LV       ,
    UCODE_ADDS_A_B ,
    UCODE_AVE_S_D  ,
    UCODE_SE3L0_W  ,
    UCODE_ADDS_A_W ,
    UCODE_SE3L0_H  ,
    UCODE_SRA_W    ,
    UCODE_BMZ_B    ,
    UCODE_DIV_S    ,
    UCODE_SE3L0_B  ,
    UCODE_MVTGR_S_B,
    UCODE_ADDS_S_D ,
    UCODE_ADDS_S_B ,
    UCODE_MIN_A_W  ,
    UCODE_MSUB_PS  ,
    UCODE_ADDS_S_H ,
    UCODE_ADDS_S_W ,
    UCODE_S3IL1_B  ,
    UCODE_MIN_A_H  ,
    UCODE_MIN_A_D  ,
    UCODE_MIN_A_B  ,
    UCODE_S3IL1_H  ,
    UCODE_MVFGE_W  ,
    UCODE_SUBS_U_H ,
    UCODE_SUBS_U_D ,
    UCODE_SUBS_U_B ,
    UCODE_FRINT_D  ,
    UCODE_MVTGR_U_W,
    UCODE_PCNT_H   ,
    UCODE_SUBS_U_W ,
    UCODE_ADD_A_W  ,
    UCODE_FRINT_W  ,
    UCODE_SRA_D    ,
    UCODE_SUBS_S_H ,
    UCODE_SE3R2_W  ,
    UCODE_FCLE_W   ,
    UCODE_MOVE_H   ,
    UCODE_MOVE_D   ,
    UCODE_MOVE_B   ,
    UCODE_FCLE_D   ,
    UCODE_SE3R2_B  ,
    UCODE_MOVE_W   ,
    UCODE_MOVE_V   ,
    UCODE_SE3R2_H  ,
    UCODE_MSUBR_Q_W,
    UCODE_SLDR_H   ,
    UCODE_S3IL0_B  ,
    UCODE_NLZC_H   ,
    UCODE_BC1F     ,
    UCODE_CLT_S_H  ,
    UCODE_AVE_U_D  ,
    UCODE_MSUBV_W  ,
    UCODE_AVE_U_B  ,
    UCODE_CLT_S_B  ,
    UCODE_CLE_U_H  ,
    UCODE_CLT_S_D  ,
    UCODE_AVE_U_H  ,
    UCODE_MSUBV_D  ,
    UCODE_BMNZ_B   ,
    UCODE_AVE_U_W  ,
    UCODE_CLE_U_W  ,
    UCODE_MSUBV_B  ,
    UCODE_MSUBV_H  ,
    UCODE_CLT_S_W  ,
    UCODE_CLT_U_W  ,
    UCODE_MADDV_W  ,
    UCODE_CLT_U_H  ,
    UCODE_CLT_U_D  ,
    UCODE_CLT_U_B  ,
    UCODE_BC1T     ,
    UCODE_NLOC_W   ,
    UCODE_CTCMSA   ,
    UCODE_NLOC_B   ,
    UCODE_NLOC_D   ,
    UCODE_MVTGR_S_W,
    UCODE_NLOC_H   ,
    UCODE_ASUB_S_W ,
    UCODE_AVE_S_W  ,
    UCODE_MVTG_U_B ,
    UCODE_CEIL_L_S ,
    UCODE_ASUB_U_H ,
    UCODE_MVTG_U_H ,
    UCODE_ASUB_S_D ,
    UCODE_MVTG_U_W ,
    UCODE_MOVN_DP  ,
    UCODE_ASUB_S_B ,
    UCODE_AVE_S_H  ,
    UCODE_ASUB_S_H ,
    UCODE_MOVZ_DP  ,
    UCODE_TRUNC_L_S,
    UCODE_NLZC_W   ,
    UCODE_TRUNC_L_D,
    UCODE_SRL_H    ,
    UCODE_NLZC_B   ,
    UCODE_SRL_B    ,
    UCODE_NLZC_D   ,
    UCODE_FMIN_A_D ,
    UCODE_ADD_A_H  ,
    UCODE_FMIN_A_W ,
    UCODE_FMADD_W  ,
    UCODE_NMSUB_PS ,
    UCODE_ADDV_H   ,
    UCODE_ADDV_W   ,
    UCODE_FMADD_D  ,
    UCODE_MADDV_D  ,
    UCODE_CLE_U_D  ,
    UCODE_CLE_U_B  ,
    UCODE_FTQ_H    ,
    UCODE_MAX_S_B  ,
    UCODE_MAX_U_W  ,
    UCODE_MAX_S_D  ,
    UCODE_MAX_S_H  ,
    UCODE_MAX_U_D  ,
    UCODE_MAX_S_W  ,
    UCODE_MAX_U_B  ,
    UCODE_MAX_U_H  ,
    UCODE_MAX_A_B  ,
    UCODE_MAX_A_D  ,
    UCODE_CVT_PS_S ,
    UCODE_MAX_A_H  ,
    UCODE_MAX_A_W  ,
    UCODE_ILVL_W   ,
    UCODE_ILVR_H   ,
    UCODE_ILVR_B   ,
    UCODE_ILVR_D   ,
    UCODE_ILVL_D   ,
    UCODE_ILVL_B   ,
    UCODE_ILVR_W   ,
    UCODE_ILVL_H   ,
    UCODE_MUL_D    ,
    UCODE_FDIV_D   ,
    UCODE_MTHC1    ,
    UCODE_PCKOD_H  ,
    UCODE_PCKOD_D  ,
    UCODE_BSEL_B   ,
    UCODE_MSUB_D   ,
    UCODE_FDIV_W   ,
    UCODE_MUL_S    ,
    UCODE_PCKOD_W  ,
    UCODE_MSUB_S   ,
    UCODE_CEIL_W_D ,
    UCODE_CEIL_W_S ,
    UCODE_SQRT_S   ,
    UCODE_MADDR_Q_W,
    UCODE_MOV_PS   ,
    UCODE_BCLR_W   ,
    UCODE_SLDR_W   ,
    UCODE_ADD_A_B  ,
    UCODE_BNZ_D    ,
    UCODE_ROUND_L_D,
    UCODE_RECIP_S  ,
    UCODE_MTC1     ,
    UCODE_BCLR_H   ,
    UCODE_MADDR_Q_H,
    UCODE_MVTGR_S_H,
    UCODE_S3IL1_W  ,
    UCODE_PUL_PS   ,
    UCODE_SAT_S_W  ,
    UCODE_FTQ_W    ,
    UCODE_MOV_D    ,
    UCODE_MOV_S    ,
    UCODE_MADDV_H  ,
    UCODE_SE3L1_B  ,
    UCODE_FTINT_S_W,
    UCODE_MUL_Q_W  ,
    UCODE_MADDV_B  ,
    UCODE_FCEQU_W  ,
    UCODE_FMAX_W   ,
    UCODE_SE3L1_W  ,
    UCODE_OR_B     ,
    UCODE_FTINT_S_D,
    UCODE_MUL_Q_H  ,
    UCODE_SLD_W    ,
    UCODE_FMAX_D   ,
    UCODE_FCEQU_D  ,
    UCODE_PUU_PS   ,
    UCODE_SHF_W    ,
    UCODE_CTC1     ,
    UCODE_SHF_B    ,
    UCODE_SHF_H    ,
    UCODE_CEQ_W    ,
    UCODE_SAT_S_D  ,
    UCODE_CVT_L_D  ,
    UCODE_FSUB_D   ,
    UCODE_NMADD_S  ,
    UCODE_CVT_L_S  ,
    UCODE_CEQ_D    ,
    UCODE_PLL_PS   ,
    UCODE_CEQ_B    ,
    UCODE_NOR_B    ,
    UCODE_FSUB_W   ,
    UCODE_NMADD_D  ,
    UCODE_CEQ_H    ,
    UCODE_FFINT_S_W,
    UCODE_FTINT_U_D,
    UCODE_S3IR2_B  ,
    UCODE_FMSUB_W  ,
    UCODE_FEXDO_H  ,
    UCODE_S3IR2_H  ,
    UCODE_FTINT_U_W,
    UCODE_FEXDO_W  ,
    UCODE_FMSUB_D  ,
    UCODE_ILVOD_W  ,
    UCODE_FSQRT_W  ,
    UCODE_ILVOD_B  ,
    UCODE_ILVOD_D  ,
    UCODE_ILVOD_H  ,
    UCODE_FCEQ_D   ,
    UCODE_LDI_W    ,
    UCODE_AND_B    ,
    UCODE_LDI_H    ,
    UCODE_FCEQ_W   ,
    UCODE_LDI_B    ,
    UCODE_LDI_D    ,
    UCODE_S3IR0_W  ,
    UCODE_DOTP_S_W ,
    UCODE_FFINT_S_D,
    UCODE_BSET_B   ,
    UCODE_S3IR0_B  ,
    UCODE_DOTP_S_D ,
    UCODE_DOTP_S_H ,
    UCODE_S3IR0_H  ,
    UCODE_DOTP_U_D ,
    UCODE_FSQRT_D  ,
    UCODE_MOVER_W  ,
    UCODE_DOTP_U_H ,
    UCODE_DOTP_U_W ,
    UCODE_MOVER_H  ,
    UCODE_MOVER_D  ,
    UCODE_MOVER_B  ,
    UCODE_CVT_S_L  ,
    UCODE_BNEG_H   ,
    UCODE_BNEG_B   ,
    UCODE_ABS_PS   ,
    UCODE_FCUN_D   ,
    UCODE_MOVZ_S   ,
    UCODE_NEG_PS   ,
    UCODE_FCUN_W   ,
    UCODE_S3IR2_W  ,
    UCODE_FCLT_W   ,
    UCODE_CVT_S_D  ,
    UCODE_NMADD_PS ,
    UCODE_MOVN_S   ,
    UCODE_MVFGE_H  ,
    UCODE_SE3R0_H  ,
    UCODE_FCLT_D   ,
    UCODE_MVFGE_B  ,
    UCODE_ADD_S    ,
    UCODE_FCLEU_D  ,
    UCODE_MOVF_S   ,
    UCODE_MFC1     ,
    UCODE_ADD_D    ,
    UCODE_FCLEU_W  ,
    UCODE_MOVF_D   ,
    UCODE_SHL_W    ,
    UCODE_CVT_D_S  ,
    UCODE_MVFGER_W ,
    UCODE_CVT_D_W  ,
    UCODE_SHL_B    ,
    UCODE_MVFGER_H ,
    UCODE_SHL_D    ,
    UCODE_CVT_D_L  ,
    UCODE_SHL_H    ,
    UCODE_MVFGER_B ,
    UCODE_MVFG_W   ,
    UCODE_MOVF     ,
    UCODE_COND_S   ,
    UCODE_SE3R1_B  ,
    UCODE_MVFG_B   ,
    UCODE_MADD_Q_H ,
    UCODE_MOVT     ,
    UCODE_MVFG_H   ,
    UCODE_RSQRT_S  ,
    UCODE_SE3R1_H  ,
    UCODE_RSQRT_D  ,
    UCODE_FLOOR_W_D,
    UCODE_RECIP_D  ,
    UCODE_FMIN_D   ,
    UCODE_BNZ_V    ,
    UCODE_CVT_S_PL ,
    UCODE_S3IL2_W  ,
    UCODE_S3IL2_H  ,
    UCODE_FLOOR_W_S,
    UCODE_BNZ_H    ,
    UCODE_CVT_S_PU ,
    UCODE_FMIN_W   ,
    UCODE_BNZ_W    ,
    UCODE_BNZ_B    ,
    UCODE_SE3R1_W  ,
    UCODE_MOVT_S   ,
    UCODE_MADD_PS  ,
    UCODE_MOVT_D   ,
    UCODE_BZ_H     ,
    UCODE_BZ_B     ,
    UCODE_BZ_D     ,
    UCODE_BZ_V     ,
    UCODE_BZ_W     ,
    UCODE_FFINT_U_D,
    UCODE_BSET_W   ,
    UCODE_ILVEV_W  ,
    UCODE_FFINT_U_W,
    UCODE_ILVEV_H  ,
    UCODE_ILVEV_D  ,
    UCODE_ILVEV_B  ,
    UCODE_NMSUB_D  ,
    UCODE_FLOG2_D  ,
    UCODE_MULR_Q_W ,
    UCODE_SDC1     ,
    UCODE_DIV_D    ,
    UCODE_FLOG2_W  ,
    UCODE_NMSUB_S  ,
    UCODE_MULR_Q_H ,
    UCODE_COND_P   ,
    UCODE_S3IL0_H  ,
    UCODE_S3IL0_W  ,
    UCODE_ABS_D    ,
    UCODE_MSUB_Q_W ,
    UCODE_MSUB_Q_H ,
    UCODE_MADD_S   ,
    UCODE_NEG_S    ,
    UCODE_NEG_D    ,
    UCODE_MADD_D   ,
    UCODE_SUB_S    ,
    UCODE_FCLTU_D  ,
    UCODE_SLD_H    ,
    UCODE_SUB_PS   ,
    UCODE_SLD_B    ,
    UCODE_FCLTU_W  ,
    UCODE_FEXP2_W  ,
    UCODE_MUL_PS   ,
    UCODE_PCKOD_B  ,
    UCODE_CVT_S_W  ,
    UCODE_FEXP2_D  ,
    UCODE_ABS_S    ,
    UCODE_SE3L1_H  ,
    UCODE_MVTGR_U_B
} ucode_asm_t;

function automatic ucode_asm_t add_ucode_asm_gen;
input [`JZ4785_UADD-1:0] i_ucode;
begin
    casex(i_ucode)
    `JZ4785_UADD_MIN_U_H  :return UCODE_MIN_U_H  ;
    `JZ4785_UADD_MIN_U_B  :return UCODE_MIN_U_B  ;
    `JZ4785_UADD_MIN_S_W  :return UCODE_MIN_S_W  ;
    `JZ4785_UADD_MIN_U_D  :return UCODE_MIN_U_D  ;
    `JZ4785_UADD_MIN_S_H  :return UCODE_MIN_S_H  ;
    `JZ4785_UADD_MIN_S_D  :return UCODE_MIN_S_D  ;
    `JZ4785_UADD_MIN_U_W  :return UCODE_MIN_U_W  ;
    `JZ4785_UADD_MIN_S_B  :return UCODE_MIN_S_B  ;
    `JZ4785_UADD_SUB_D    :return UCODE_SUB_D    ;
    `JZ4785_UADD_ADDS_A_D :return UCODE_ADDS_A_D ;
    `JZ4785_UADD_ADDS_A_H :return UCODE_ADDS_A_H ;
    `JZ4785_UADD_FMAX_A_W :return UCODE_FMAX_A_W ;
    `JZ4785_UADD_FADD_D   :return UCODE_FADD_D   ;
    `JZ4785_UADD_FADD_W   :return UCODE_FADD_W   ;
    `JZ4785_UADD_FMAX_A_D :return UCODE_FMAX_A_D ;
    `JZ4785_UADD_ADDS_U_H :return UCODE_ADDS_U_H ;
    `JZ4785_UADD_ADDS_U_B :return UCODE_ADDS_U_B ;
    `JZ4785_UADD_ADDS_U_D :return UCODE_ADDS_U_D ;
    `JZ4785_UADD_ADDS_U_W :return UCODE_ADDS_U_W ;
    `JZ4785_UADD_ADD_A_D  :return UCODE_ADD_A_D  ;
    `JZ4785_UADD_ADDV_B   :return UCODE_ADDV_B   ;
    `JZ4785_UADD_ADDV_D   :return UCODE_ADDV_D   ;
    `JZ4785_UADD_SUBV_B   :return UCODE_SUBV_B   ;
    `JZ4785_UADD_SUBV_D   :return UCODE_SUBV_D   ;
    `JZ4785_UADD_SUBV_H   :return UCODE_SUBV_H   ;
    `JZ4785_UADD_SUBV_W   :return UCODE_SUBV_W   ;
    `JZ4785_UADD_SUBS_S_W :return UCODE_SUBS_S_W ;
    `JZ4785_UADD_SUBS_S_B :return UCODE_SUBS_S_B ;
    `JZ4785_UADD_SUBS_S_D :return UCODE_SUBS_S_D ;
    `JZ4785_UADD_ADD_PS   :return UCODE_ADD_PS   ;
    `JZ4785_UADD_ASUB_U_D :return UCODE_ASUB_U_D ;
    `JZ4785_UADD_ASUB_U_B :return UCODE_ASUB_U_B ;
    `JZ4785_UADD_SUBSS_U_W:return UCODE_SUBSS_U_W;
    `JZ4785_UADD_CLE_S_W  :return UCODE_CLE_S_W  ;
    `JZ4785_UADD_SUBSS_U_D:return UCODE_SUBSS_U_D;
    `JZ4785_UADD_CLE_S_H  :return UCODE_CLE_S_H  ;
    `JZ4785_UADD_SUBSS_U_B:return UCODE_SUBSS_U_B;
    `JZ4785_UADD_CLE_S_D  :return UCODE_CLE_S_D  ;
    `JZ4785_UADD_SUBSS_U_H:return UCODE_SUBSS_U_H;
    `JZ4785_UADD_CLE_S_B  :return UCODE_CLE_S_B  ;
    `JZ4785_UADD_AVE_S_B  :return UCODE_AVE_S_B  ;
    `JZ4785_UADD_ASUB_U_W :return UCODE_ASUB_U_W ;
    `JZ4785_UADD_ADDS_A_B :return UCODE_ADDS_A_B ;
    `JZ4785_UADD_AVE_S_D  :return UCODE_AVE_S_D  ;
    `JZ4785_UADD_ADDS_A_W :return UCODE_ADDS_A_W ;
    `JZ4785_UADD_ADDS_S_D :return UCODE_ADDS_S_D ;
    `JZ4785_UADD_ADDS_S_B :return UCODE_ADDS_S_B ;
    `JZ4785_UADD_MIN_A_W  :return UCODE_MIN_A_W  ;
    `JZ4785_UADD_ADDS_S_H :return UCODE_ADDS_S_H ;
    `JZ4785_UADD_ADDS_S_W :return UCODE_ADDS_S_W ;
    `JZ4785_UADD_MIN_A_H  :return UCODE_MIN_A_H  ;
    `JZ4785_UADD_MIN_A_D  :return UCODE_MIN_A_D  ;
    `JZ4785_UADD_MIN_A_B  :return UCODE_MIN_A_B  ;
    `JZ4785_UADD_SUBS_U_H :return UCODE_SUBS_U_H ;
    `JZ4785_UADD_SUBS_U_D :return UCODE_SUBS_U_D ;
    `JZ4785_UADD_SUBS_U_B :return UCODE_SUBS_U_B ;
    `JZ4785_UADD_SUBS_U_W :return UCODE_SUBS_U_W ;
    `JZ4785_UADD_ADD_A_W  :return UCODE_ADD_A_W  ;
    `JZ4785_UADD_SUBS_S_H :return UCODE_SUBS_S_H ;
    `JZ4785_UADD_FCLE_W   :return UCODE_FCLE_W   ;
    `JZ4785_UADD_FCLE_D   :return UCODE_FCLE_D   ;
    `JZ4785_UADD_CLT_S_H  :return UCODE_CLT_S_H  ;
    `JZ4785_UADD_AVE_U_D  :return UCODE_AVE_U_D  ;
    `JZ4785_UADD_AVE_U_B  :return UCODE_AVE_U_B  ;
    `JZ4785_UADD_CLT_S_B  :return UCODE_CLT_S_B  ;
    `JZ4785_UADD_CLE_U_H  :return UCODE_CLE_U_H  ;
    `JZ4785_UADD_CLT_S_D  :return UCODE_CLT_S_D  ;
    `JZ4785_UADD_AVE_U_H  :return UCODE_AVE_U_H  ;
    `JZ4785_UADD_AVE_U_W  :return UCODE_AVE_U_W  ;
    `JZ4785_UADD_CLE_U_W  :return UCODE_CLE_U_W  ;
    `JZ4785_UADD_CLT_S_W  :return UCODE_CLT_S_W  ;
    `JZ4785_UADD_CLT_U_W  :return UCODE_CLT_U_W  ;
    `JZ4785_UADD_CLT_U_H  :return UCODE_CLT_U_H  ;
    `JZ4785_UADD_CLT_U_D  :return UCODE_CLT_U_D  ;
    `JZ4785_UADD_CLT_U_B  :return UCODE_CLT_U_B  ;
    `JZ4785_UADD_ASUB_S_W :return UCODE_ASUB_S_W ;
    `JZ4785_UADD_AVE_S_W  :return UCODE_AVE_S_W  ;
    `JZ4785_UADD_ASUB_U_H :return UCODE_ASUB_U_H ;
    `JZ4785_UADD_ASUB_S_D :return UCODE_ASUB_S_D ;
    `JZ4785_UADD_ASUB_S_B :return UCODE_ASUB_S_B ;
    `JZ4785_UADD_AVE_S_H  :return UCODE_AVE_S_H  ;
    `JZ4785_UADD_ASUB_S_H :return UCODE_ASUB_S_H ;
    `JZ4785_UADD_FMIN_A_D :return UCODE_FMIN_A_D ;
    `JZ4785_UADD_ADD_A_H  :return UCODE_ADD_A_H  ;
    `JZ4785_UADD_FMIN_A_W :return UCODE_FMIN_A_W ;
    `JZ4785_UADD_ADDV_H   :return UCODE_ADDV_H   ;
    `JZ4785_UADD_ADDV_W   :return UCODE_ADDV_W   ;
    `JZ4785_UADD_CLE_U_D  :return UCODE_CLE_U_D  ;
    `JZ4785_UADD_CLE_U_B  :return UCODE_CLE_U_B  ;
    `JZ4785_UADD_MAX_S_B  :return UCODE_MAX_S_B  ;
    `JZ4785_UADD_MAX_U_W  :return UCODE_MAX_U_W  ;
    `JZ4785_UADD_MAX_S_D  :return UCODE_MAX_S_D  ;
    `JZ4785_UADD_MAX_S_H  :return UCODE_MAX_S_H  ;
    `JZ4785_UADD_MAX_U_D  :return UCODE_MAX_U_D  ;
    `JZ4785_UADD_MAX_S_W  :return UCODE_MAX_S_W  ;
    `JZ4785_UADD_MAX_U_B  :return UCODE_MAX_U_B  ;
    `JZ4785_UADD_MAX_U_H  :return UCODE_MAX_U_H  ;
    `JZ4785_UADD_MAX_A_B  :return UCODE_MAX_A_B  ;
    `JZ4785_UADD_MAX_A_D  :return UCODE_MAX_A_D  ;
    `JZ4785_UADD_MAX_A_H  :return UCODE_MAX_A_H  ;
    `JZ4785_UADD_MAX_A_W  :return UCODE_MAX_A_W  ;
    `JZ4785_UADD_ADD_A_B  :return UCODE_ADD_A_B  ;
    `JZ4785_UADD_FCEQU_W  :return UCODE_FCEQU_W  ;
    `JZ4785_UADD_FMAX_W   :return UCODE_FMAX_W   ;
    `JZ4785_UADD_FMAX_D   :return UCODE_FMAX_D   ;
    `JZ4785_UADD_FCEQU_D  :return UCODE_FCEQU_D  ;
    `JZ4785_UADD_CEQ_W    :return UCODE_CEQ_W    ;
    `JZ4785_UADD_FSUB_D   :return UCODE_FSUB_D   ;
    `JZ4785_UADD_CEQ_D    :return UCODE_CEQ_D    ;
    `JZ4785_UADD_CEQ_B    :return UCODE_CEQ_B    ;
    `JZ4785_UADD_FSUB_W   :return UCODE_FSUB_W   ;
    `JZ4785_UADD_CEQ_H    :return UCODE_CEQ_H    ;
    `JZ4785_UADD_FCEQ_D   :return UCODE_FCEQ_D   ;
    `JZ4785_UADD_FCEQ_W   :return UCODE_FCEQ_W   ;
    `JZ4785_UADD_FCUN_D   :return UCODE_FCUN_D   ;
    `JZ4785_UADD_FCUN_W   :return UCODE_FCUN_W   ;
    `JZ4785_UADD_FCLT_W   :return UCODE_FCLT_W   ;
    `JZ4785_UADD_FCLT_D   :return UCODE_FCLT_D   ;
    `JZ4785_UADD_ADD_S    :return UCODE_ADD_S    ;
    `JZ4785_UADD_FCLEU_D  :return UCODE_FCLEU_D  ;
    `JZ4785_UADD_ADD_D    :return UCODE_ADD_D    ;
    `JZ4785_UADD_FCLEU_W  :return UCODE_FCLEU_W  ;
    `JZ4785_UADD_FMIN_D   :return UCODE_FMIN_D   ;
    `JZ4785_UADD_FMIN_W   :return UCODE_FMIN_W   ;
    `JZ4785_UADD_SUB_S    :return UCODE_SUB_S    ;
    `JZ4785_UADD_FCLTU_D  :return UCODE_FCLTU_D  ;
    `JZ4785_UADD_SUB_PS   :return UCODE_SUB_PS   ;
    `JZ4785_UADD_FCLTU_W  :return UCODE_FCLTU_W  ;
    endcase
    return UCODE_NOP;
end
endfunction

function automatic ucode_asm_t msc_ucode_asm_gen;
input [`JZ4785_UMSC-1:0] i_ucode;
begin
    casex(i_ucode)
    `JZ4785_UMSC_PCKEV_H  :return UCODE_PCKEV_H  ;
    `JZ4785_UMSC_BINSL_W  :return UCODE_BINSL_W  ;
    `JZ4785_UMSC_PCKEV_B  :return UCODE_PCKEV_B  ;
    `JZ4785_UMSC_BINSL_H  :return UCODE_BINSL_H  ;
    `JZ4785_UMSC_BINSL_D  :return UCODE_BINSL_D  ;
    `JZ4785_UMSC_BINSL_B  :return UCODE_BINSL_B  ;
    `JZ4785_UMSC_CVT_W_D  :return UCODE_CVT_W_D  ;
    `JZ4785_UMSC_VSHF_D   :return UCODE_VSHF_D   ;
    `JZ4785_UMSC_VSHF_B   :return UCODE_VSHF_B   ;
    `JZ4785_UMSC_SAT_U_W  :return UCODE_SAT_U_W  ;
    `JZ4785_UMSC_VSHF_H   :return UCODE_VSHF_H   ;
    `JZ4785_UMSC_VSHF_W   :return UCODE_VSHF_W   ;
    `JZ4785_UMSC_SAT_U_B  :return UCODE_SAT_U_B  ;
    `JZ4785_UMSC_SAT_U_D  :return UCODE_SAT_U_D  ;
    `JZ4785_UMSC_CVT_W_S  :return UCODE_CVT_W_S  ;
    `JZ4785_UMSC_SAT_U_H  :return UCODE_SAT_U_H  ;
    `JZ4785_UMSC_PCKEV_D  :return UCODE_PCKEV_D  ;
    `JZ4785_UMSC_PCNT_W   :return UCODE_PCNT_W   ;
    `JZ4785_UMSC_ROUND_W_D:return UCODE_ROUND_W_D;
    `JZ4785_UMSC_SRA_H    :return UCODE_SRA_H    ;
    `JZ4785_UMSC_PCNT_B   :return UCODE_PCNT_B   ;
    `JZ4785_UMSC_PCNT_D   :return UCODE_PCNT_D   ;
    `JZ4785_UMSC_ROUND_W_S:return UCODE_ROUND_W_S;
    `JZ4785_UMSC_SRA_B    :return UCODE_SRA_B    ;
    `JZ4785_UMSC_XOR_B    :return UCODE_XOR_B    ;
    `JZ4785_UMSC_CEIL_L_D :return UCODE_CEIL_L_D ;
    `JZ4785_UMSC_FEXUPL_D :return UCODE_FEXUPL_D ;
    `JZ4785_UMSC_FEXUPL_W :return UCODE_FEXUPL_W ;
    `JZ4785_UMSC_PCKEV_W  :return UCODE_PCKEV_W  ;
    `JZ4785_UMSC_FFQR_W   :return UCODE_FFQR_W   ;
    `JZ4785_UMSC_S3IL2_B  :return UCODE_S3IL2_B  ;
    `JZ4785_UMSC_FFQL_D   :return UCODE_FFQL_D   ;
    `JZ4785_UMSC_FFQR_D   :return UCODE_FFQR_D   ;
    `JZ4785_UMSC_FFQL_W   :return UCODE_FFQL_W   ;
    `JZ4785_UMSC_S3IR1_W  :return UCODE_S3IR1_W  ;
    `JZ4785_UMSC_SAT_S_H  :return UCODE_SAT_S_H  ;
    `JZ4785_UMSC_FCLASS_W :return UCODE_FCLASS_W ;
    `JZ4785_UMSC_SAT_S_B  :return UCODE_SAT_S_B  ;
    `JZ4785_UMSC_S3IR1_B  :return UCODE_S3IR1_B  ;
    `JZ4785_UMSC_FCLASS_D :return UCODE_FCLASS_D ;
    `JZ4785_UMSC_S3IR1_H  :return UCODE_S3IR1_H  ;
    `JZ4785_UMSC_ROUND_L_S:return UCODE_ROUND_L_S;
    `JZ4785_UMSC_SRL_D    :return UCODE_SRL_D    ;
    `JZ4785_UMSC_SRL_W    :return UCODE_SRL_W    ;
    `JZ4785_UMSC_SE3L2_H  :return UCODE_SE3L2_H  ;
    `JZ4785_UMSC_BINSR_H  :return UCODE_BINSR_H  ;
    `JZ4785_UMSC_BSET_D   :return UCODE_BSET_D   ;
    `JZ4785_UMSC_SE3L2_B  :return UCODE_SE3L2_B  ;
    `JZ4785_UMSC_BINSR_B  :return UCODE_BINSR_B  ;
    `JZ4785_UMSC_BINSR_D  :return UCODE_BINSR_D  ;
    `JZ4785_UMSC_BSET_H   :return UCODE_BSET_H   ;
    `JZ4785_UMSC_BINSR_W  :return UCODE_BINSR_W  ;
    `JZ4785_UMSC_SE3L2_W  :return UCODE_SE3L2_W  ;
    `JZ4785_UMSC_BCLR_D   :return UCODE_BCLR_D   ;
    `JZ4785_UMSC_BNEG_W   :return UCODE_BNEG_W   ;
    `JZ4785_UMSC_FEXUPR_W :return UCODE_FEXUPR_W ;
    `JZ4785_UMSC_BNEG_D   :return UCODE_BNEG_D   ;
    `JZ4785_UMSC_BCLR_B   :return UCODE_BCLR_B   ;
    `JZ4785_UMSC_TRUNC_W_D:return UCODE_TRUNC_W_D;
    `JZ4785_UMSC_FEXUPR_D :return UCODE_FEXUPR_D ;
    `JZ4785_UMSC_TRUNC_W_S:return UCODE_TRUNC_W_S;
    `JZ4785_UMSC_PLU_PS   :return UCODE_PLU_PS   ;
    `JZ4785_UMSC_SE3R0_B  :return UCODE_SE3R0_B  ;
    `JZ4785_UMSC_FLOOR_L_S:return UCODE_FLOOR_L_S;
    `JZ4785_UMSC_SE3R0_W  :return UCODE_SE3R0_W  ;
    `JZ4785_UMSC_FLOOR_L_D:return UCODE_FLOOR_L_D;
    `JZ4785_UMSC_SE3L0_W  :return UCODE_SE3L0_W  ;
    `JZ4785_UMSC_SE3L0_H  :return UCODE_SE3L0_H  ;
    `JZ4785_UMSC_SRA_W    :return UCODE_SRA_W    ;
    `JZ4785_UMSC_BMZ_B    :return UCODE_BMZ_B    ;
    `JZ4785_UMSC_SE3L0_B  :return UCODE_SE3L0_B  ;
    `JZ4785_UMSC_S3IL1_B  :return UCODE_S3IL1_B  ;
    `JZ4785_UMSC_S3IL1_H  :return UCODE_S3IL1_H  ;
    `JZ4785_UMSC_FRINT_D  :return UCODE_FRINT_D  ;
    `JZ4785_UMSC_PCNT_H   :return UCODE_PCNT_H   ;
    `JZ4785_UMSC_FRINT_W  :return UCODE_FRINT_W  ;
    `JZ4785_UMSC_SRA_D    :return UCODE_SRA_D    ;
    `JZ4785_UMSC_SE3R2_W  :return UCODE_SE3R2_W  ;
    `JZ4785_UMSC_MOVE_H   :return UCODE_MOVE_H   ;
    `JZ4785_UMSC_MOVE_D   :return UCODE_MOVE_D   ;
    `JZ4785_UMSC_MOVE_B   :return UCODE_MOVE_B   ;
    `JZ4785_UMSC_SE3R2_B  :return UCODE_SE3R2_B  ;
    `JZ4785_UMSC_MOVE_W   :return UCODE_MOVE_W   ;
    `JZ4785_UMSC_MOVE_V   :return UCODE_MOVE_V   ;
    `JZ4785_UMSC_SE3R2_H  :return UCODE_SE3R2_H  ;
    `JZ4785_UMSC_S3IL0_B  :return UCODE_S3IL0_B  ;
    `JZ4785_UMSC_NLZC_H   :return UCODE_NLZC_H   ;
    `JZ4785_UMSC_BMNZ_B   :return UCODE_BMNZ_B   ;
    `JZ4785_UMSC_NLOC_W   :return UCODE_NLOC_W   ;
    `JZ4785_UMSC_NLOC_B   :return UCODE_NLOC_B   ;
    `JZ4785_UMSC_NLOC_D   :return UCODE_NLOC_D   ;
    `JZ4785_UMSC_NLOC_H   :return UCODE_NLOC_H   ;
    `JZ4785_UMSC_CEIL_L_S :return UCODE_CEIL_L_S ;
    `JZ4785_UMSC_TRUNC_L_S:return UCODE_TRUNC_L_S;
    `JZ4785_UMSC_NLZC_W   :return UCODE_NLZC_W   ;
    `JZ4785_UMSC_TRUNC_L_D:return UCODE_TRUNC_L_D;
    `JZ4785_UMSC_SRL_H    :return UCODE_SRL_H    ;
    `JZ4785_UMSC_NLZC_B   :return UCODE_NLZC_B   ;
    `JZ4785_UMSC_SRL_B    :return UCODE_SRL_B    ;
    `JZ4785_UMSC_NLZC_D   :return UCODE_NLZC_D   ;
    `JZ4785_UMSC_FTQ_H    :return UCODE_FTQ_H    ;
    `JZ4785_UMSC_CVT_PS_S :return UCODE_CVT_PS_S ;
    `JZ4785_UMSC_ILVL_W   :return UCODE_ILVL_W   ;
    `JZ4785_UMSC_ILVR_H   :return UCODE_ILVR_H   ;
    `JZ4785_UMSC_ILVR_B   :return UCODE_ILVR_B   ;
    `JZ4785_UMSC_ILVR_D   :return UCODE_ILVR_D   ;
    `JZ4785_UMSC_ILVL_D   :return UCODE_ILVL_D   ;
    `JZ4785_UMSC_ILVL_B   :return UCODE_ILVL_B   ;
    `JZ4785_UMSC_ILVR_W   :return UCODE_ILVR_W   ;
    `JZ4785_UMSC_ILVL_H   :return UCODE_ILVL_H   ;
    `JZ4785_UMSC_PCKOD_H  :return UCODE_PCKOD_H  ;
    `JZ4785_UMSC_PCKOD_D  :return UCODE_PCKOD_D  ;
    `JZ4785_UMSC_BSEL_B   :return UCODE_BSEL_B   ;
    `JZ4785_UMSC_PCKOD_W  :return UCODE_PCKOD_W  ;
    `JZ4785_UMSC_CEIL_W_D :return UCODE_CEIL_W_D ;
    `JZ4785_UMSC_CEIL_W_S :return UCODE_CEIL_W_S ;
    `JZ4785_UMSC_MOV_PS   :return UCODE_MOV_PS   ;
    `JZ4785_UMSC_BCLR_W   :return UCODE_BCLR_W   ;
    `JZ4785_UMSC_ROUND_L_D:return UCODE_ROUND_L_D;
    `JZ4785_UMSC_BCLR_H   :return UCODE_BCLR_H   ;
    `JZ4785_UMSC_S3IL1_W  :return UCODE_S3IL1_W  ;
    `JZ4785_UMSC_PUL_PS   :return UCODE_PUL_PS   ;
    `JZ4785_UMSC_SAT_S_W  :return UCODE_SAT_S_W  ;
    `JZ4785_UMSC_FTQ_W    :return UCODE_FTQ_W    ;
    `JZ4785_UMSC_MOV_D    :return UCODE_MOV_D    ;
    `JZ4785_UMSC_MOV_S    :return UCODE_MOV_S    ;
    `JZ4785_UMSC_SE3L1_B  :return UCODE_SE3L1_B  ;
    `JZ4785_UMSC_FTINT_S_W:return UCODE_FTINT_S_W;
    `JZ4785_UMSC_SE3L1_W  :return UCODE_SE3L1_W  ;
    `JZ4785_UMSC_OR_B     :return UCODE_OR_B     ;
    `JZ4785_UMSC_FTINT_S_D:return UCODE_FTINT_S_D;
    `JZ4785_UMSC_PUU_PS   :return UCODE_PUU_PS   ;
    `JZ4785_UMSC_SHF_W    :return UCODE_SHF_W    ;
    `JZ4785_UMSC_SHF_B    :return UCODE_SHF_B    ;
    `JZ4785_UMSC_SHF_H    :return UCODE_SHF_H    ;
    `JZ4785_UMSC_SAT_S_D  :return UCODE_SAT_S_D  ;
    `JZ4785_UMSC_CVT_L_D  :return UCODE_CVT_L_D  ;
    `JZ4785_UMSC_CVT_L_S  :return UCODE_CVT_L_S  ;
    `JZ4785_UMSC_PLL_PS   :return UCODE_PLL_PS   ;
    `JZ4785_UMSC_NOR_B    :return UCODE_NOR_B    ;
    `JZ4785_UMSC_FFINT_S_W:return UCODE_FFINT_S_W;
    `JZ4785_UMSC_FTINT_U_D:return UCODE_FTINT_U_D;
    `JZ4785_UMSC_S3IR2_B  :return UCODE_S3IR2_B  ;
    `JZ4785_UMSC_FEXDO_H  :return UCODE_FEXDO_H  ;
    `JZ4785_UMSC_S3IR2_H  :return UCODE_S3IR2_H  ;
    `JZ4785_UMSC_FTINT_U_W:return UCODE_FTINT_U_W;
    `JZ4785_UMSC_FEXDO_W  :return UCODE_FEXDO_W  ;
    `JZ4785_UMSC_ILVOD_W  :return UCODE_ILVOD_W  ;
    `JZ4785_UMSC_ILVOD_B  :return UCODE_ILVOD_B  ;
    `JZ4785_UMSC_ILVOD_D  :return UCODE_ILVOD_D  ;
    `JZ4785_UMSC_ILVOD_H  :return UCODE_ILVOD_H  ;
    `JZ4785_UMSC_LDI_W    :return UCODE_LDI_W    ;
    `JZ4785_UMSC_AND_B    :return UCODE_AND_B    ;
    `JZ4785_UMSC_LDI_H    :return UCODE_LDI_H    ;
    `JZ4785_UMSC_LDI_B    :return UCODE_LDI_B    ;
    `JZ4785_UMSC_LDI_D    :return UCODE_LDI_D    ;
    `JZ4785_UMSC_S3IR0_W  :return UCODE_S3IR0_W  ;
    `JZ4785_UMSC_FFINT_S_D:return UCODE_FFINT_S_D;
    `JZ4785_UMSC_BSET_B   :return UCODE_BSET_B   ;
    `JZ4785_UMSC_S3IR0_B  :return UCODE_S3IR0_B  ;
    `JZ4785_UMSC_S3IR0_H  :return UCODE_S3IR0_H  ;
    `JZ4785_UMSC_CVT_S_L  :return UCODE_CVT_S_L  ;
    `JZ4785_UMSC_BNEG_H   :return UCODE_BNEG_H   ;
    `JZ4785_UMSC_BNEG_B   :return UCODE_BNEG_B   ;
    `JZ4785_UMSC_ABS_PS   :return UCODE_ABS_PS   ;
    `JZ4785_UMSC_NEG_PS   :return UCODE_NEG_PS   ;
    `JZ4785_UMSC_S3IR2_W  :return UCODE_S3IR2_W  ;
    `JZ4785_UMSC_CVT_S_D  :return UCODE_CVT_S_D  ;
    `JZ4785_UMSC_SE3R0_H  :return UCODE_SE3R0_H  ;
    `JZ4785_UMSC_SHL_W    :return UCODE_SHL_W    ;
    `JZ4785_UMSC_CVT_D_S  :return UCODE_CVT_D_S  ;
    `JZ4785_UMSC_CVT_D_W  :return UCODE_CVT_D_W  ;
    `JZ4785_UMSC_SHL_B    :return UCODE_SHL_B    ;
    `JZ4785_UMSC_SHL_D    :return UCODE_SHL_D    ;
    `JZ4785_UMSC_CVT_D_L  :return UCODE_CVT_D_L  ;
    `JZ4785_UMSC_SHL_H    :return UCODE_SHL_H    ;
    `JZ4785_UMSC_SE3R1_B  :return UCODE_SE3R1_B  ;
    `JZ4785_UMSC_SE3R1_H  :return UCODE_SE3R1_H  ;
    `JZ4785_UMSC_FLOOR_W_D:return UCODE_FLOOR_W_D;
    `JZ4785_UMSC_CVT_S_PL :return UCODE_CVT_S_PL ;
    `JZ4785_UMSC_S3IL2_W  :return UCODE_S3IL2_W  ;
    `JZ4785_UMSC_S3IL2_H  :return UCODE_S3IL2_H  ;
    `JZ4785_UMSC_FLOOR_W_S:return UCODE_FLOOR_W_S;
    `JZ4785_UMSC_CVT_S_PU :return UCODE_CVT_S_PU ;
    `JZ4785_UMSC_SE3R1_W  :return UCODE_SE3R1_W  ;
    `JZ4785_UMSC_FFINT_U_D:return UCODE_FFINT_U_D;
    `JZ4785_UMSC_BSET_W   :return UCODE_BSET_W   ;
    `JZ4785_UMSC_ILVEV_W  :return UCODE_ILVEV_W  ;
    `JZ4785_UMSC_FFINT_U_W:return UCODE_FFINT_U_W;
    `JZ4785_UMSC_ILVEV_H  :return UCODE_ILVEV_H  ;
    `JZ4785_UMSC_ILVEV_D  :return UCODE_ILVEV_D  ;
    `JZ4785_UMSC_ILVEV_B  :return UCODE_ILVEV_B  ;
    `JZ4785_UMSC_FLOG2_D  :return UCODE_FLOG2_D  ;
    `JZ4785_UMSC_FLOG2_W  :return UCODE_FLOG2_W  ;
    `JZ4785_UMSC_S3IL0_H  :return UCODE_S3IL0_H  ;
    `JZ4785_UMSC_S3IL0_W  :return UCODE_S3IL0_W  ;
    `JZ4785_UMSC_ABS_D    :return UCODE_ABS_D    ;
    `JZ4785_UMSC_NEG_S    :return UCODE_NEG_S    ;
    `JZ4785_UMSC_NEG_D    :return UCODE_NEG_D    ;
    `JZ4785_UMSC_FEXP2_W  :return UCODE_FEXP2_W  ;
    `JZ4785_UMSC_PCKOD_B  :return UCODE_PCKOD_B  ;
    `JZ4785_UMSC_CVT_S_W  :return UCODE_CVT_S_W  ;
    `JZ4785_UMSC_FEXP2_D  :return UCODE_FEXP2_D  ;
    `JZ4785_UMSC_ABS_S    :return UCODE_ABS_S    ;
    `JZ4785_UMSC_SE3L1_H  :return UCODE_SE3L1_H  ;
    endcase
    return UCODE_NOP;
end
endfunction

function automatic ucode_asm_t xcg_ucode_asm_gen;
input [`JZ4785_UXCG-1:0] i_ucode;
begin
    casex(i_ucode)
    `JZ4785_UXCG_MVTG_S_H :return UCODE_MVTG_S_H ;
    `JZ4785_UXCG_SDXC1    :return UCODE_SDXC1    ;
    `JZ4785_UXCG_SWC1     :return UCODE_SWC1     ;
    `JZ4785_UXCG_SLDR_B   :return UCODE_SLDR_B   ;
    `JZ4785_UXCG_MOVF_PS  :return UCODE_MOVF_PS  ;
    `JZ4785_UXCG_LW       :return UCODE_LW       ;
    `JZ4785_UXCG_CFC1     :return UCODE_CFC1     ;
    `JZ4785_UXCG_COND_D   :return UCODE_COND_D   ;
    `JZ4785_UXCG_MFHC1    :return UCODE_MFHC1    ;
    `JZ4785_UXCG_ALNV_PS  :return UCODE_ALNV_PS  ;
    `JZ4785_UXCG_LD       :return UCODE_LD       ;
    `JZ4785_UXCG_CFCMSA   :return UCODE_CFCMSA   ;
    `JZ4785_UXCG_SLDR_D   :return UCODE_SLDR_D   ;
    `JZ4785_UXCG_MVTGR_U_H:return UCODE_MVTGR_U_H;
    `JZ4785_UXCG_STV      :return UCODE_STV      ;
    `JZ4785_UXCG_MVTG_S_B :return UCODE_MVTG_S_B ;
    `JZ4785_UXCG_SLD_D    :return UCODE_SLD_D    ;
    `JZ4785_UXCG_MOVT_PS  :return UCODE_MOVT_PS  ;
    `JZ4785_UXCG_SWXC1    :return UCODE_SWXC1    ;
    `JZ4785_UXCG_MVTG_S_W :return UCODE_MVTG_S_W ;
    `JZ4785_UXCG_LV       :return UCODE_LV       ;
    `JZ4785_UXCG_MVTGR_S_B:return UCODE_MVTGR_S_B;
    `JZ4785_UXCG_MVFGE_W  :return UCODE_MVFGE_W  ;
    `JZ4785_UXCG_MVTGR_U_W:return UCODE_MVTGR_U_W;
    `JZ4785_UXCG_SLDR_H   :return UCODE_SLDR_H   ;
    `JZ4785_UXCG_BC1F     :return UCODE_BC1F     ;
    `JZ4785_UXCG_BC1T     :return UCODE_BC1T     ;
    `JZ4785_UXCG_CTCMSA   :return UCODE_CTCMSA   ;
    `JZ4785_UXCG_MVTGR_S_W:return UCODE_MVTGR_S_W;
    `JZ4785_UXCG_MVTG_U_B :return UCODE_MVTG_U_B ;
    `JZ4785_UXCG_MVTG_U_H :return UCODE_MVTG_U_H ;
    `JZ4785_UXCG_MVTG_U_W :return UCODE_MVTG_U_W ;
    `JZ4785_UXCG_MOVN_DP  :return UCODE_MOVN_DP  ;
    `JZ4785_UXCG_MOVZ_DP  :return UCODE_MOVZ_DP  ;
    `JZ4785_UXCG_MTHC1    :return UCODE_MTHC1    ;
    `JZ4785_UXCG_SLDR_W   :return UCODE_SLDR_W   ;
    `JZ4785_UXCG_BNZ_D    :return UCODE_BNZ_D    ;
    `JZ4785_UXCG_MTC1     :return UCODE_MTC1     ;
    `JZ4785_UXCG_MVTGR_S_H:return UCODE_MVTGR_S_H;
    `JZ4785_UXCG_SLD_W    :return UCODE_SLD_W    ;
    `JZ4785_UXCG_CTC1     :return UCODE_CTC1     ;
    `JZ4785_UXCG_MOVER_W  :return UCODE_MOVER_W  ;
    `JZ4785_UXCG_MOVER_H  :return UCODE_MOVER_H  ;
    `JZ4785_UXCG_MOVER_D  :return UCODE_MOVER_D  ;
    `JZ4785_UXCG_MOVER_B  :return UCODE_MOVER_B  ;
    `JZ4785_UXCG_MOVZ_S   :return UCODE_MOVZ_S   ;
    `JZ4785_UXCG_MOVN_S   :return UCODE_MOVN_S   ;
    `JZ4785_UXCG_MVFGE_H  :return UCODE_MVFGE_H  ;
    `JZ4785_UXCG_MVFGE_B  :return UCODE_MVFGE_B  ;
    `JZ4785_UXCG_MOVF_S   :return UCODE_MOVF_S   ;
    `JZ4785_UXCG_MFC1     :return UCODE_MFC1     ;
    `JZ4785_UXCG_MOVF_D   :return UCODE_MOVF_D   ;
    `JZ4785_UXCG_MVFGER_W :return UCODE_MVFGER_W ;
    `JZ4785_UXCG_MVFGER_H :return UCODE_MVFGER_H ;
    `JZ4785_UXCG_MVFGER_B :return UCODE_MVFGER_B ;
    `JZ4785_UXCG_MVFG_W   :return UCODE_MVFG_W   ;
    `JZ4785_UXCG_MOVF     :return UCODE_MOVF     ;
    `JZ4785_UXCG_COND_S   :return UCODE_COND_S   ;
    `JZ4785_UXCG_MVFG_B   :return UCODE_MVFG_B   ;
    `JZ4785_UXCG_MOVT     :return UCODE_MOVT     ;
    `JZ4785_UXCG_MVFG_H   :return UCODE_MVFG_H   ;
    `JZ4785_UXCG_BNZ_V    :return UCODE_BNZ_V    ;
    `JZ4785_UXCG_BNZ_H    :return UCODE_BNZ_H    ;
    `JZ4785_UXCG_BNZ_W    :return UCODE_BNZ_W    ;
    `JZ4785_UXCG_BNZ_B    :return UCODE_BNZ_B    ;
    `JZ4785_UXCG_MOVT_S   :return UCODE_MOVT_S   ;
    `JZ4785_UXCG_MOVT_D   :return UCODE_MOVT_D   ;
    `JZ4785_UXCG_BZ_H     :return UCODE_BZ_H     ;
    `JZ4785_UXCG_BZ_B     :return UCODE_BZ_B     ;
    `JZ4785_UXCG_BZ_D     :return UCODE_BZ_D     ;
    `JZ4785_UXCG_BZ_V     :return UCODE_BZ_V     ;
    `JZ4785_UXCG_BZ_W     :return UCODE_BZ_W     ;
    `JZ4785_UXCG_SDC1     :return UCODE_SDC1     ;
    `JZ4785_UXCG_COND_P   :return UCODE_COND_P   ;
    `JZ4785_UXCG_SLD_H    :return UCODE_SLD_H    ;
    `JZ4785_UXCG_SLD_B    :return UCODE_SLD_B    ;
    `JZ4785_UXCG_MVTGR_U_B:return UCODE_MVTGR_U_B;
    endcase
    return UCODE_NOP;
end
endfunction

function automatic ucode_asm_t mul_ucode_asm_gen;
input [`JZ4785_UMUL-1:0] i_ucode;
begin
    casex(i_ucode)
    `JZ4785_UMUL_DPADD_U_W:return UCODE_DPADD_U_W;
    `JZ4785_UMUL_DPADD_U_H:return UCODE_DPADD_U_H;
    `JZ4785_UMUL_DPADD_U_D:return UCODE_DPADD_U_D;
    `JZ4785_UMUL_MULV_W   :return UCODE_MULV_W   ;
    `JZ4785_UMUL_MULV_D   :return UCODE_MULV_D   ;
    `JZ4785_UMUL_MSUBR_Q_H:return UCODE_MSUBR_Q_H;
    `JZ4785_UMUL_MULV_H   :return UCODE_MULV_H   ;
    `JZ4785_UMUL_DPSUB_U_W:return UCODE_DPSUB_U_W;
    `JZ4785_UMUL_DPADD_S_H:return UCODE_DPADD_S_H;
    `JZ4785_UMUL_DPADD_S_D:return UCODE_DPADD_S_D;
    `JZ4785_UMUL_DPADD_S_W:return UCODE_DPADD_S_W;
    `JZ4785_UMUL_DPSUB_U_D:return UCODE_DPSUB_U_D;
    `JZ4785_UMUL_MADD_Q_W :return UCODE_MADD_Q_W ;
    `JZ4785_UMUL_MULV_B   :return UCODE_MULV_B   ;
    `JZ4785_UMUL_DPSUB_S_H:return UCODE_DPSUB_S_H;
    `JZ4785_UMUL_FMUL_W   :return UCODE_FMUL_W   ;
    `JZ4785_UMUL_DPSUB_S_D:return UCODE_DPSUB_S_D;
    `JZ4785_UMUL_FMUL_D   :return UCODE_FMUL_D   ;
    `JZ4785_UMUL_DPSUB_U_H:return UCODE_DPSUB_U_H;
    `JZ4785_UMUL_DPSUB_S_W:return UCODE_DPSUB_S_W;
    `JZ4785_UMUL_MSUB_PS  :return UCODE_MSUB_PS  ;
    `JZ4785_UMUL_MSUBR_Q_W:return UCODE_MSUBR_Q_W;
    `JZ4785_UMUL_MSUBV_W  :return UCODE_MSUBV_W  ;
    `JZ4785_UMUL_MSUBV_D  :return UCODE_MSUBV_D  ;
    `JZ4785_UMUL_MSUBV_B  :return UCODE_MSUBV_B  ;
    `JZ4785_UMUL_MSUBV_H  :return UCODE_MSUBV_H  ;
    `JZ4785_UMUL_MADDV_W  :return UCODE_MADDV_W  ;
    `JZ4785_UMUL_FMADD_W  :return UCODE_FMADD_W  ;
    `JZ4785_UMUL_NMSUB_PS :return UCODE_NMSUB_PS ;
    `JZ4785_UMUL_FMADD_D  :return UCODE_FMADD_D  ;
    `JZ4785_UMUL_MADDV_D  :return UCODE_MADDV_D  ;
    `JZ4785_UMUL_MUL_D    :return UCODE_MUL_D    ;
    `JZ4785_UMUL_MSUB_D   :return UCODE_MSUB_D   ;
    `JZ4785_UMUL_MUL_S    :return UCODE_MUL_S    ;
    `JZ4785_UMUL_MSUB_S   :return UCODE_MSUB_S   ;
    `JZ4785_UMUL_MADDR_Q_W:return UCODE_MADDR_Q_W;
    `JZ4785_UMUL_MADDR_Q_H:return UCODE_MADDR_Q_H;
    `JZ4785_UMUL_MADDV_H  :return UCODE_MADDV_H  ;
    `JZ4785_UMUL_MUL_Q_W  :return UCODE_MUL_Q_W  ;
    `JZ4785_UMUL_MADDV_B  :return UCODE_MADDV_B  ;
    `JZ4785_UMUL_MUL_Q_H  :return UCODE_MUL_Q_H  ;
    `JZ4785_UMUL_NMADD_S  :return UCODE_NMADD_S  ;
    `JZ4785_UMUL_NMADD_D  :return UCODE_NMADD_D  ;
    `JZ4785_UMUL_FMSUB_W  :return UCODE_FMSUB_W  ;
    `JZ4785_UMUL_FMSUB_D  :return UCODE_FMSUB_D  ;
    `JZ4785_UMUL_DOTP_S_W :return UCODE_DOTP_S_W ;
    `JZ4785_UMUL_DOTP_S_D :return UCODE_DOTP_S_D ;
    `JZ4785_UMUL_DOTP_S_H :return UCODE_DOTP_S_H ;
    `JZ4785_UMUL_DOTP_U_D :return UCODE_DOTP_U_D ;
    `JZ4785_UMUL_DOTP_U_H :return UCODE_DOTP_U_H ;
    `JZ4785_UMUL_DOTP_U_W :return UCODE_DOTP_U_W ;
    `JZ4785_UMUL_NMADD_PS :return UCODE_NMADD_PS ;
    `JZ4785_UMUL_MADD_Q_H :return UCODE_MADD_Q_H ;
    `JZ4785_UMUL_MADD_PS  :return UCODE_MADD_PS  ;
    `JZ4785_UMUL_NMSUB_D  :return UCODE_NMSUB_D  ;
    `JZ4785_UMUL_MULR_Q_W :return UCODE_MULR_Q_W ;
    `JZ4785_UMUL_NMSUB_S  :return UCODE_NMSUB_S  ;
    `JZ4785_UMUL_MULR_Q_H :return UCODE_MULR_Q_H ;
    `JZ4785_UMUL_MSUB_Q_W :return UCODE_MSUB_Q_W ;
    `JZ4785_UMUL_MSUB_Q_H :return UCODE_MSUB_Q_H ;
    `JZ4785_UMUL_MADD_S   :return UCODE_MADD_S   ;
    `JZ4785_UMUL_MADD_D   :return UCODE_MADD_D   ;
    `JZ4785_UMUL_MUL_PS   :return UCODE_MUL_PS   ;
    endcase
    return UCODE_NOP;
end
endfunction

function automatic ucode_asm_t elf_ucode_asm_gen;
input [`JZ4785_UELF-1:0] i_ucode;
begin
    casex(i_ucode)
    `JZ4785_UELF_SQRT_D :return UCODE_SQRT_D ;
    `JZ4785_UELF_DIV_S  :return UCODE_DIV_S  ;
    `JZ4785_UELF_FDIV_D :return UCODE_FDIV_D ;
    `JZ4785_UELF_FDIV_W :return UCODE_FDIV_W ;
    `JZ4785_UELF_SQRT_S :return UCODE_SQRT_S ;
    `JZ4785_UELF_RECIP_S:return UCODE_RECIP_S;
    `JZ4785_UELF_FSQRT_W:return UCODE_FSQRT_W;
    `JZ4785_UELF_FSQRT_D:return UCODE_FSQRT_D;
    `JZ4785_UELF_RSQRT_S:return UCODE_RSQRT_S;
    `JZ4785_UELF_RSQRT_D:return UCODE_RSQRT_D;
    `JZ4785_UELF_RECIP_D:return UCODE_RECIP_D;
    `JZ4785_UELF_DIV_D  :return UCODE_DIV_D  ;
    endcase
    return UCODE_NOP;
end
endfunction


function automatic void display_ucode_asm;
input ucode_asm_t i_ucode_asm;
begin
    case(i_ucode_asm)
    UCODE_MIN_U_H  :$display("MIN_U_H  ");
    UCODE_PCKEV_H  :$display("PCKEV_H  ");
    UCODE_BINSL_W  :$display("BINSL_W  ");
    UCODE_MIN_U_B  :$display("MIN_U_B  ");
    UCODE_MIN_S_W  :$display("MIN_S_W  ");
    UCODE_PCKEV_B  :$display("PCKEV_B  ");
    UCODE_MVTG_S_H :$display("MVTG_S_H ");
    UCODE_MIN_U_D  :$display("MIN_U_D  ");
    UCODE_MIN_S_H  :$display("MIN_S_H  ");
    UCODE_BINSL_H  :$display("BINSL_H  ");
    UCODE_MIN_S_D  :$display("MIN_S_D  ");
    UCODE_BINSL_D  :$display("BINSL_D  ");
    UCODE_MIN_U_W  :$display("MIN_U_W  ");
    UCODE_BINSL_B  :$display("BINSL_B  ");
    UCODE_MIN_S_B  :$display("MIN_S_B  ");
    UCODE_CVT_W_D  :$display("CVT_W_D  ");
    UCODE_VSHF_D   :$display("VSHF_D   ");
    UCODE_VSHF_B   :$display("VSHF_B   ");
    UCODE_SAT_U_W  :$display("SAT_U_W  ");
    UCODE_DPADD_U_W:$display("DPADD_U_W");
    UCODE_VSHF_H   :$display("VSHF_H   ");
    UCODE_VSHF_W   :$display("VSHF_W   ");
    UCODE_SDXC1    :$display("SDXC1    ");
    UCODE_DPADD_U_H:$display("DPADD_U_H");
    UCODE_SAT_U_B  :$display("SAT_U_B  ");
    UCODE_SAT_U_D  :$display("SAT_U_D  ");
    UCODE_CVT_W_S  :$display("CVT_W_S  ");
    UCODE_SUB_D    :$display("SUB_D    ");
    UCODE_SAT_U_H  :$display("SAT_U_H  ");
    UCODE_PCKEV_D  :$display("PCKEV_D  ");
    UCODE_DPADD_U_D:$display("DPADD_U_D");
    UCODE_ADDS_A_D :$display("ADDS_A_D ");
    UCODE_PCNT_W   :$display("PCNT_W   ");
    UCODE_ROUND_W_D:$display("ROUND_W_D");
    UCODE_SRA_H    :$display("SRA_H    ");
    UCODE_PCNT_B   :$display("PCNT_B   ");
    UCODE_PCNT_D   :$display("PCNT_D   ");
    UCODE_ROUND_W_S:$display("ROUND_W_S");
    UCODE_SRA_B    :$display("SRA_B    ");
    UCODE_ADDS_A_H :$display("ADDS_A_H ");
    UCODE_MULV_W   :$display("MULV_W   ");
    UCODE_FMAX_A_W :$display("FMAX_A_W ");
    UCODE_FADD_D   :$display("FADD_D   ");
    UCODE_XOR_B    :$display("XOR_B    ");
    UCODE_CEIL_L_D :$display("CEIL_L_D ");
    UCODE_MULV_D   :$display("MULV_D   ");
    UCODE_SQRT_D   :$display("SQRT_D   ");
    UCODE_FADD_W   :$display("FADD_W   ");
    UCODE_FMAX_A_D :$display("FMAX_A_D ");
    UCODE_MSUBR_Q_H:$display("MSUBR_Q_H");
    UCODE_MULV_H   :$display("MULV_H   ");
    UCODE_FEXUPL_D :$display("FEXUPL_D ");
    UCODE_ADDS_U_H :$display("ADDS_U_H ");
    UCODE_ADDS_U_B :$display("ADDS_U_B ");
    UCODE_DPSUB_U_W:$display("DPSUB_U_W");
    UCODE_ADDS_U_D :$display("ADDS_U_D ");
    UCODE_FEXUPL_W :$display("FEXUPL_W ");
    UCODE_PCKEV_W  :$display("PCKEV_W  ");
    UCODE_ADDS_U_W :$display("ADDS_U_W ");
    UCODE_SWC1     :$display("SWC1     ");
    UCODE_FFQR_W   :$display("FFQR_W   ");
    UCODE_SLDR_B   :$display("SLDR_B   ");
    UCODE_S3IL2_B  :$display("S3IL2_B  ");
    UCODE_FFQL_D   :$display("FFQL_D   ");
    UCODE_FFQR_D   :$display("FFQR_D   ");
    UCODE_FFQL_W   :$display("FFQL_W   ");
    UCODE_MOVF_PS  :$display("MOVF_PS  ");
    UCODE_ADD_A_D  :$display("ADD_A_D  ");
    UCODE_DPADD_S_H:$display("DPADD_S_H");
    UCODE_S3IR1_W  :$display("S3IR1_W  ");
    UCODE_SAT_S_H  :$display("SAT_S_H  ");
    UCODE_DPADD_S_D:$display("DPADD_S_D");
    UCODE_FCLASS_W :$display("FCLASS_W ");
    UCODE_SAT_S_B  :$display("SAT_S_B  ");
    UCODE_ADDV_B   :$display("ADDV_B   ");
    UCODE_S3IR1_B  :$display("S3IR1_B  ");
    UCODE_ADDV_D   :$display("ADDV_D   ");
    UCODE_FCLASS_D :$display("FCLASS_D ");
    UCODE_S3IR1_H  :$display("S3IR1_H  ");
    UCODE_DPADD_S_W:$display("DPADD_S_W");
    UCODE_SUBV_B   :$display("SUBV_B   ");
    UCODE_LW       :$display("LW       ");
    UCODE_SUBV_D   :$display("SUBV_D   ");
    UCODE_ROUND_L_S:$display("ROUND_L_S");
    UCODE_DPSUB_U_D:$display("DPSUB_U_D");
    UCODE_SUBV_H   :$display("SUBV_H   ");
    UCODE_SRL_D    :$display("SRL_D    ");
    UCODE_SUBV_W   :$display("SUBV_W   ");
    UCODE_CFC1     :$display("CFC1     ");
    UCODE_SRL_W    :$display("SRL_W    ");
    UCODE_SE3L2_H  :$display("SE3L2_H  ");
    UCODE_BINSR_H  :$display("BINSR_H  ");
    UCODE_BSET_D   :$display("BSET_D   ");
    UCODE_SUBS_S_W :$display("SUBS_S_W ");
    UCODE_SE3L2_B  :$display("SE3L2_B  ");
    UCODE_BINSR_B  :$display("BINSR_B  ");
    UCODE_BINSR_D  :$display("BINSR_D  ");
    UCODE_BSET_H   :$display("BSET_H   ");
    UCODE_SUBS_S_B :$display("SUBS_S_B ");
    UCODE_COND_D   :$display("COND_D   ");
    UCODE_SUBS_S_D :$display("SUBS_S_D ");
    UCODE_MADD_Q_W :$display("MADD_Q_W ");
    UCODE_BINSR_W  :$display("BINSR_W  ");
    UCODE_SE3L2_W  :$display("SE3L2_W  ");
    UCODE_BCLR_D   :$display("BCLR_D   ");
    UCODE_MFHC1    :$display("MFHC1    ");
    UCODE_ALNV_PS  :$display("ALNV_PS  ");
    UCODE_ADD_PS   :$display("ADD_PS   ");
    UCODE_MULV_B   :$display("MULV_B   ");
    UCODE_BNEG_W   :$display("BNEG_W   ");
    UCODE_FEXUPR_W :$display("FEXUPR_W ");
    UCODE_BNEG_D   :$display("BNEG_D   ");
    UCODE_BCLR_B   :$display("BCLR_B   ");
    UCODE_TRUNC_W_D:$display("TRUNC_W_D");
    UCODE_LD       :$display("LD       ");
    UCODE_CFCMSA   :$display("CFCMSA   ");
    UCODE_FEXUPR_D :$display("FEXUPR_D ");
    UCODE_SLDR_D   :$display("SLDR_D   ");
    UCODE_TRUNC_W_S:$display("TRUNC_W_S");
    UCODE_MVTGR_U_H:$display("MVTGR_U_H");
    UCODE_DPSUB_S_H:$display("DPSUB_S_H");
    UCODE_FMUL_W   :$display("FMUL_W   ");
    UCODE_STV      :$display("STV      ");
    UCODE_ASUB_U_D :$display("ASUB_U_D ");
    UCODE_DPSUB_S_D:$display("DPSUB_S_D");
    UCODE_ASUB_U_B :$display("ASUB_U_B ");
    UCODE_PLU_PS   :$display("PLU_PS   ");
    UCODE_FMUL_D   :$display("FMUL_D   ");
    UCODE_DPSUB_U_H:$display("DPSUB_U_H");
    UCODE_DPSUB_S_W:$display("DPSUB_S_W");
    UCODE_SUBSS_U_W:$display("SUBSS_U_W");
    UCODE_SE3R0_B  :$display("SE3R0_B  ");
    UCODE_MVTG_S_B :$display("MVTG_S_B ");
    UCODE_SLD_D    :$display("SLD_D    ");
    UCODE_CLE_S_W  :$display("CLE_S_W  ");
    UCODE_FLOOR_L_S:$display("FLOOR_L_S");
    UCODE_SUBSS_U_D:$display("SUBSS_U_D");
    UCODE_SE3R0_W  :$display("SE3R0_W  ");
    UCODE_CLE_S_H  :$display("CLE_S_H  ");
    UCODE_SUBSS_U_B:$display("SUBSS_U_B");
    UCODE_CLE_S_D  :$display("CLE_S_D  ");
    UCODE_FLOOR_L_D:$display("FLOOR_L_D");
    UCODE_SUBSS_U_H:$display("SUBSS_U_H");
    UCODE_CLE_S_B  :$display("CLE_S_B  ");
    UCODE_MOVT_PS  :$display("MOVT_PS  ");
    UCODE_AVE_S_B  :$display("AVE_S_B  ");
    UCODE_SWXC1    :$display("SWXC1    ");
    UCODE_MVTG_S_W :$display("MVTG_S_W ");
    UCODE_ASUB_U_W :$display("ASUB_U_W ");
    UCODE_LV       :$display("LV       ");
    UCODE_ADDS_A_B :$display("ADDS_A_B ");
    UCODE_AVE_S_D  :$display("AVE_S_D  ");
    UCODE_SE3L0_W  :$display("SE3L0_W  ");
    UCODE_ADDS_A_W :$display("ADDS_A_W ");
    UCODE_SE3L0_H  :$display("SE3L0_H  ");
    UCODE_SRA_W    :$display("SRA_W    ");
    UCODE_BMZ_B    :$display("BMZ_B    ");
    UCODE_DIV_S    :$display("DIV_S    ");
    UCODE_SE3L0_B  :$display("SE3L0_B  ");
    UCODE_MVTGR_S_B:$display("MVTGR_S_B");
    UCODE_ADDS_S_D :$display("ADDS_S_D ");
    UCODE_ADDS_S_B :$display("ADDS_S_B ");
    UCODE_MIN_A_W  :$display("MIN_A_W  ");
    UCODE_MSUB_PS  :$display("MSUB_PS  ");
    UCODE_ADDS_S_H :$display("ADDS_S_H ");
    UCODE_ADDS_S_W :$display("ADDS_S_W ");
    UCODE_S3IL1_B  :$display("S3IL1_B  ");
    UCODE_MIN_A_H  :$display("MIN_A_H  ");
    UCODE_MIN_A_D  :$display("MIN_A_D  ");
    UCODE_MIN_A_B  :$display("MIN_A_B  ");
    UCODE_S3IL1_H  :$display("S3IL1_H  ");
    UCODE_MVFGE_W  :$display("MVFGE_W  ");
    UCODE_SUBS_U_H :$display("SUBS_U_H ");
    UCODE_SUBS_U_D :$display("SUBS_U_D ");
    UCODE_SUBS_U_B :$display("SUBS_U_B ");
    UCODE_FRINT_D  :$display("FRINT_D  ");
    UCODE_MVTGR_U_W:$display("MVTGR_U_W");
    UCODE_PCNT_H   :$display("PCNT_H   ");
    UCODE_SUBS_U_W :$display("SUBS_U_W ");
    UCODE_ADD_A_W  :$display("ADD_A_W  ");
    UCODE_FRINT_W  :$display("FRINT_W  ");
    UCODE_SRA_D    :$display("SRA_D    ");
    UCODE_SUBS_S_H :$display("SUBS_S_H ");
    UCODE_SE3R2_W  :$display("SE3R2_W  ");
    UCODE_FCLE_W   :$display("FCLE_W   ");
    UCODE_MOVE_H   :$display("MOVE_H   ");
    UCODE_MOVE_D   :$display("MOVE_D   ");
    UCODE_MOVE_B   :$display("MOVE_B   ");
    UCODE_FCLE_D   :$display("FCLE_D   ");
    UCODE_SE3R2_B  :$display("SE3R2_B  ");
    UCODE_MOVE_W   :$display("MOVE_W   ");
    UCODE_MOVE_V   :$display("MOVE_V   ");
    UCODE_SE3R2_H  :$display("SE3R2_H  ");
    UCODE_MSUBR_Q_W:$display("MSUBR_Q_W");
    UCODE_SLDR_H   :$display("SLDR_H   ");
    UCODE_S3IL0_B  :$display("S3IL0_B  ");
    UCODE_NLZC_H   :$display("NLZC_H   ");
    UCODE_BC1F     :$display("BC1F     ");
    UCODE_CLT_S_H  :$display("CLT_S_H  ");
    UCODE_AVE_U_D  :$display("AVE_U_D  ");
    UCODE_MSUBV_W  :$display("MSUBV_W  ");
    UCODE_AVE_U_B  :$display("AVE_U_B  ");
    UCODE_CLT_S_B  :$display("CLT_S_B  ");
    UCODE_CLE_U_H  :$display("CLE_U_H  ");
    UCODE_CLT_S_D  :$display("CLT_S_D  ");
    UCODE_AVE_U_H  :$display("AVE_U_H  ");
    UCODE_MSUBV_D  :$display("MSUBV_D  ");
    UCODE_BMNZ_B   :$display("BMNZ_B   ");
    UCODE_AVE_U_W  :$display("AVE_U_W  ");
    UCODE_CLE_U_W  :$display("CLE_U_W  ");
    UCODE_MSUBV_B  :$display("MSUBV_B  ");
    UCODE_MSUBV_H  :$display("MSUBV_H  ");
    UCODE_CLT_S_W  :$display("CLT_S_W  ");
    UCODE_CLT_U_W  :$display("CLT_U_W  ");
    UCODE_MADDV_W  :$display("MADDV_W  ");
    UCODE_CLT_U_H  :$display("CLT_U_H  ");
    UCODE_CLT_U_D  :$display("CLT_U_D  ");
    UCODE_CLT_U_B  :$display("CLT_U_B  ");
    UCODE_BC1T     :$display("BC1T     ");
    UCODE_NLOC_W   :$display("NLOC_W   ");
    UCODE_CTCMSA   :$display("CTCMSA   ");
    UCODE_NLOC_B   :$display("NLOC_B   ");
    UCODE_NLOC_D   :$display("NLOC_D   ");
    UCODE_MVTGR_S_W:$display("MVTGR_S_W");
    UCODE_NLOC_H   :$display("NLOC_H   ");
    UCODE_ASUB_S_W :$display("ASUB_S_W ");
    UCODE_AVE_S_W  :$display("AVE_S_W  ");
    UCODE_MVTG_U_B :$display("MVTG_U_B ");
    UCODE_CEIL_L_S :$display("CEIL_L_S ");
    UCODE_ASUB_U_H :$display("ASUB_U_H ");
    UCODE_MVTG_U_H :$display("MVTG_U_H ");
    UCODE_ASUB_S_D :$display("ASUB_S_D ");
    UCODE_MVTG_U_W :$display("MVTG_U_W ");
    UCODE_MOVN_DP  :$display("MOVN_DP  ");
    UCODE_ASUB_S_B :$display("ASUB_S_B ");
    UCODE_AVE_S_H  :$display("AVE_S_H  ");
    UCODE_ASUB_S_H :$display("ASUB_S_H ");
    UCODE_MOVZ_DP  :$display("MOVZ_DP  ");
    UCODE_TRUNC_L_S:$display("TRUNC_L_S");
    UCODE_NLZC_W   :$display("NLZC_W   ");
    UCODE_TRUNC_L_D:$display("TRUNC_L_D");
    UCODE_SRL_H    :$display("SRL_H    ");
    UCODE_NLZC_B   :$display("NLZC_B   ");
    UCODE_SRL_B    :$display("SRL_B    ");
    UCODE_NLZC_D   :$display("NLZC_D   ");
    UCODE_FMIN_A_D :$display("FMIN_A_D ");
    UCODE_ADD_A_H  :$display("ADD_A_H  ");
    UCODE_FMIN_A_W :$display("FMIN_A_W ");
    UCODE_FMADD_W  :$display("FMADD_W  ");
    UCODE_NMSUB_PS :$display("NMSUB_PS ");
    UCODE_ADDV_H   :$display("ADDV_H   ");
    UCODE_ADDV_W   :$display("ADDV_W   ");
    UCODE_FMADD_D  :$display("FMADD_D  ");
    UCODE_MADDV_D  :$display("MADDV_D  ");
    UCODE_CLE_U_D  :$display("CLE_U_D  ");
    UCODE_CLE_U_B  :$display("CLE_U_B  ");
    UCODE_FTQ_H    :$display("FTQ_H    ");
    UCODE_MAX_S_B  :$display("MAX_S_B  ");
    UCODE_MAX_U_W  :$display("MAX_U_W  ");
    UCODE_MAX_S_D  :$display("MAX_S_D  ");
    UCODE_MAX_S_H  :$display("MAX_S_H  ");
    UCODE_MAX_U_D  :$display("MAX_U_D  ");
    UCODE_MAX_S_W  :$display("MAX_S_W  ");
    UCODE_MAX_U_B  :$display("MAX_U_B  ");
    UCODE_MAX_U_H  :$display("MAX_U_H  ");
    UCODE_MAX_A_B  :$display("MAX_A_B  ");
    UCODE_MAX_A_D  :$display("MAX_A_D  ");
    UCODE_CVT_PS_S :$display("CVT_PS_S ");
    UCODE_MAX_A_H  :$display("MAX_A_H  ");
    UCODE_MAX_A_W  :$display("MAX_A_W  ");
    UCODE_ILVL_W   :$display("ILVL_W   ");
    UCODE_ILVR_H   :$display("ILVR_H   ");
    UCODE_ILVR_B   :$display("ILVR_B   ");
    UCODE_ILVR_D   :$display("ILVR_D   ");
    UCODE_ILVL_D   :$display("ILVL_D   ");
    UCODE_ILVL_B   :$display("ILVL_B   ");
    UCODE_ILVR_W   :$display("ILVR_W   ");
    UCODE_ILVL_H   :$display("ILVL_H   ");
    UCODE_MUL_D    :$display("MUL_D    ");
    UCODE_FDIV_D   :$display("FDIV_D   ");
    UCODE_MTHC1    :$display("MTHC1    ");
    UCODE_PCKOD_H  :$display("PCKOD_H  ");
    UCODE_PCKOD_D  :$display("PCKOD_D  ");
    UCODE_BSEL_B   :$display("BSEL_B   ");
    UCODE_MSUB_D   :$display("MSUB_D   ");
    UCODE_FDIV_W   :$display("FDIV_W   ");
    UCODE_MUL_S    :$display("MUL_S    ");
    UCODE_PCKOD_W  :$display("PCKOD_W  ");
    UCODE_MSUB_S   :$display("MSUB_S   ");
    UCODE_CEIL_W_D :$display("CEIL_W_D ");
    UCODE_CEIL_W_S :$display("CEIL_W_S ");
    UCODE_SQRT_S   :$display("SQRT_S   ");
    UCODE_MADDR_Q_W:$display("MADDR_Q_W");
    UCODE_MOV_PS   :$display("MOV_PS   ");
    UCODE_BCLR_W   :$display("BCLR_W   ");
    UCODE_SLDR_W   :$display("SLDR_W   ");
    UCODE_ADD_A_B  :$display("ADD_A_B  ");
    UCODE_BNZ_D    :$display("BNZ_D    ");
    UCODE_ROUND_L_D:$display("ROUND_L_D");
    UCODE_RECIP_S  :$display("RECIP_S  ");
    UCODE_MTC1     :$display("MTC1     ");
    UCODE_BCLR_H   :$display("BCLR_H   ");
    UCODE_MADDR_Q_H:$display("MADDR_Q_H");
    UCODE_MVTGR_S_H:$display("MVTGR_S_H");
    UCODE_S3IL1_W  :$display("S3IL1_W  ");
    UCODE_PUL_PS   :$display("PUL_PS   ");
    UCODE_SAT_S_W  :$display("SAT_S_W  ");
    UCODE_FTQ_W    :$display("FTQ_W    ");
    UCODE_MOV_D    :$display("MOV_D    ");
    UCODE_MOV_S    :$display("MOV_S    ");
    UCODE_MADDV_H  :$display("MADDV_H  ");
    UCODE_SE3L1_B  :$display("SE3L1_B  ");
    UCODE_FTINT_S_W:$display("FTINT_S_W");
    UCODE_MUL_Q_W  :$display("MUL_Q_W  ");
    UCODE_MADDV_B  :$display("MADDV_B  ");
    UCODE_FCEQU_W  :$display("FCEQU_W  ");
    UCODE_FMAX_W   :$display("FMAX_W   ");
    UCODE_SE3L1_W  :$display("SE3L1_W  ");
    UCODE_OR_B     :$display("OR_B     ");
    UCODE_FTINT_S_D:$display("FTINT_S_D");
    UCODE_MUL_Q_H  :$display("MUL_Q_H  ");
    UCODE_SLD_W    :$display("SLD_W    ");
    UCODE_FMAX_D   :$display("FMAX_D   ");
    UCODE_FCEQU_D  :$display("FCEQU_D  ");
    UCODE_PUU_PS   :$display("PUU_PS   ");
    UCODE_SHF_W    :$display("SHF_W    ");
    UCODE_CTC1     :$display("CTC1     ");
    UCODE_SHF_B    :$display("SHF_B    ");
    UCODE_SHF_H    :$display("SHF_H    ");
    UCODE_CEQ_W    :$display("CEQ_W    ");
    UCODE_SAT_S_D  :$display("SAT_S_D  ");
    UCODE_CVT_L_D  :$display("CVT_L_D  ");
    UCODE_FSUB_D   :$display("FSUB_D   ");
    UCODE_NMADD_S  :$display("NMADD_S  ");
    UCODE_CVT_L_S  :$display("CVT_L_S  ");
    UCODE_CEQ_D    :$display("CEQ_D    ");
    UCODE_PLL_PS   :$display("PLL_PS   ");
    UCODE_CEQ_B    :$display("CEQ_B    ");
    UCODE_NOR_B    :$display("NOR_B    ");
    UCODE_FSUB_W   :$display("FSUB_W   ");
    UCODE_NMADD_D  :$display("NMADD_D  ");
    UCODE_CEQ_H    :$display("CEQ_H    ");
    UCODE_FFINT_S_W:$display("FFINT_S_W");
    UCODE_FTINT_U_D:$display("FTINT_U_D");
    UCODE_S3IR2_B  :$display("S3IR2_B  ");
    UCODE_FMSUB_W  :$display("FMSUB_W  ");
    UCODE_FEXDO_H  :$display("FEXDO_H  ");
    UCODE_S3IR2_H  :$display("S3IR2_H  ");
    UCODE_FTINT_U_W:$display("FTINT_U_W");
    UCODE_FEXDO_W  :$display("FEXDO_W  ");
    UCODE_FMSUB_D  :$display("FMSUB_D  ");
    UCODE_ILVOD_W  :$display("ILVOD_W  ");
    UCODE_FSQRT_W  :$display("FSQRT_W  ");
    UCODE_ILVOD_B  :$display("ILVOD_B  ");
    UCODE_ILVOD_D  :$display("ILVOD_D  ");
    UCODE_ILVOD_H  :$display("ILVOD_H  ");
    UCODE_FCEQ_D   :$display("FCEQ_D   ");
    UCODE_LDI_W    :$display("LDI_W    ");
    UCODE_AND_B    :$display("AND_B    ");
    UCODE_LDI_H    :$display("LDI_H    ");
    UCODE_FCEQ_W   :$display("FCEQ_W   ");
    UCODE_LDI_B    :$display("LDI_B    ");
    UCODE_LDI_D    :$display("LDI_D    ");
    UCODE_S3IR0_W  :$display("S3IR0_W  ");
    UCODE_DOTP_S_W :$display("DOTP_S_W ");
    UCODE_FFINT_S_D:$display("FFINT_S_D");
    UCODE_BSET_B   :$display("BSET_B   ");
    UCODE_S3IR0_B  :$display("S3IR0_B  ");
    UCODE_DOTP_S_D :$display("DOTP_S_D ");
    UCODE_DOTP_S_H :$display("DOTP_S_H ");
    UCODE_S3IR0_H  :$display("S3IR0_H  ");
    UCODE_DOTP_U_D :$display("DOTP_U_D ");
    UCODE_FSQRT_D  :$display("FSQRT_D  ");
    UCODE_MOVER_W  :$display("MOVER_W  ");
    UCODE_DOTP_U_H :$display("DOTP_U_H ");
    UCODE_DOTP_U_W :$display("DOTP_U_W ");
    UCODE_MOVER_H  :$display("MOVER_H  ");
    UCODE_MOVER_D  :$display("MOVER_D  ");
    UCODE_MOVER_B  :$display("MOVER_B  ");
    UCODE_CVT_S_L  :$display("CVT_S_L  ");
    UCODE_BNEG_H   :$display("BNEG_H   ");
    UCODE_BNEG_B   :$display("BNEG_B   ");
    UCODE_ABS_PS   :$display("ABS_PS   ");
    UCODE_FCUN_D   :$display("FCUN_D   ");
    UCODE_MOVZ_S   :$display("MOVZ_S   ");
    UCODE_NEG_PS   :$display("NEG_PS   ");
    UCODE_FCUN_W   :$display("FCUN_W   ");
    UCODE_S3IR2_W  :$display("S3IR2_W  ");
    UCODE_FCLT_W   :$display("FCLT_W   ");
    UCODE_CVT_S_D  :$display("CVT_S_D  ");
    UCODE_NMADD_PS :$display("NMADD_PS ");
    UCODE_MOVN_S   :$display("MOVN_S   ");
    UCODE_MVFGE_H  :$display("MVFGE_H  ");
    UCODE_SE3R0_H  :$display("SE3R0_H  ");
    UCODE_FCLT_D   :$display("FCLT_D   ");
    UCODE_MVFGE_B  :$display("MVFGE_B  ");
    UCODE_ADD_S    :$display("ADD_S    ");
    UCODE_FCLEU_D  :$display("FCLEU_D  ");
    UCODE_MOVF_S   :$display("MOVF_S   ");
    UCODE_MFC1     :$display("MFC1     ");
    UCODE_ADD_D    :$display("ADD_D    ");
    UCODE_FCLEU_W  :$display("FCLEU_W  ");
    UCODE_MOVF_D   :$display("MOVF_D   ");
    UCODE_SHL_W    :$display("SHL_W    ");
    UCODE_CVT_D_S  :$display("CVT_D_S  ");
    UCODE_MVFGER_W :$display("MVFGER_W ");
    UCODE_CVT_D_W  :$display("CVT_D_W  ");
    UCODE_SHL_B    :$display("SHL_B    ");
    UCODE_MVFGER_H :$display("MVFGER_H ");
    UCODE_SHL_D    :$display("SHL_D    ");
    UCODE_CVT_D_L  :$display("CVT_D_L  ");
    UCODE_SHL_H    :$display("SHL_H    ");
    UCODE_MVFGER_B :$display("MVFGER_B ");
    UCODE_MVFG_W   :$display("MVFG_W   ");
    UCODE_MOVF     :$display("MOVF     ");
    UCODE_COND_S   :$display("COND_S   ");
    UCODE_SE3R1_B  :$display("SE3R1_B  ");
    UCODE_MVFG_B   :$display("MVFG_B   ");
    UCODE_MADD_Q_H :$display("MADD_Q_H ");
    UCODE_MOVT     :$display("MOVT     ");
    UCODE_MVFG_H   :$display("MVFG_H   ");
    UCODE_RSQRT_S  :$display("RSQRT_S  ");
    UCODE_SE3R1_H  :$display("SE3R1_H  ");
    UCODE_RSQRT_D  :$display("RSQRT_D  ");
    UCODE_FLOOR_W_D:$display("FLOOR_W_D");
    UCODE_RECIP_D  :$display("RECIP_D  ");
    UCODE_FMIN_D   :$display("FMIN_D   ");
    UCODE_BNZ_V    :$display("BNZ_V    ");
    UCODE_CVT_S_PL :$display("CVT_S_PL ");
    UCODE_S3IL2_W  :$display("S3IL2_W  ");
    UCODE_S3IL2_H  :$display("S3IL2_H  ");
    UCODE_FLOOR_W_S:$display("FLOOR_W_S");
    UCODE_BNZ_H    :$display("BNZ_H    ");
    UCODE_CVT_S_PU :$display("CVT_S_PU ");
    UCODE_FMIN_W   :$display("FMIN_W   ");
    UCODE_BNZ_W    :$display("BNZ_W    ");
    UCODE_BNZ_B    :$display("BNZ_B    ");
    UCODE_SE3R1_W  :$display("SE3R1_W  ");
    UCODE_MOVT_S   :$display("MOVT_S   ");
    UCODE_MADD_PS  :$display("MADD_PS  ");
    UCODE_MOVT_D   :$display("MOVT_D   ");
    UCODE_BZ_H     :$display("BZ_H     ");
    UCODE_BZ_B     :$display("BZ_B     ");
    UCODE_BZ_D     :$display("BZ_D     ");
    UCODE_BZ_V     :$display("BZ_V     ");
    UCODE_BZ_W     :$display("BZ_W     ");
    UCODE_FFINT_U_D:$display("FFINT_U_D");
    UCODE_BSET_W   :$display("BSET_W   ");
    UCODE_ILVEV_W  :$display("ILVEV_W  ");
    UCODE_FFINT_U_W:$display("FFINT_U_W");
    UCODE_ILVEV_H  :$display("ILVEV_H  ");
    UCODE_ILVEV_D  :$display("ILVEV_D  ");
    UCODE_ILVEV_B  :$display("ILVEV_B  ");
    UCODE_NMSUB_D  :$display("NMSUB_D  ");
    UCODE_FLOG2_D  :$display("FLOG2_D  ");
    UCODE_MULR_Q_W :$display("MULR_Q_W ");
    UCODE_SDC1     :$display("SDC1     ");
    UCODE_DIV_D    :$display("DIV_D    ");
    UCODE_FLOG2_W  :$display("FLOG2_W  ");
    UCODE_NMSUB_S  :$display("NMSUB_S  ");
    UCODE_MULR_Q_H :$display("MULR_Q_H ");
    UCODE_COND_P   :$display("COND_P   ");
    UCODE_S3IL0_H  :$display("S3IL0_H  ");
    UCODE_S3IL0_W  :$display("S3IL0_W  ");
    UCODE_ABS_D    :$display("ABS_D    ");
    UCODE_MSUB_Q_W :$display("MSUB_Q_W ");
    UCODE_MSUB_Q_H :$display("MSUB_Q_H ");
    UCODE_MADD_S   :$display("MADD_S   ");
    UCODE_NEG_S    :$display("NEG_S    ");
    UCODE_NEG_D    :$display("NEG_D    ");
    UCODE_MADD_D   :$display("MADD_D   ");
    UCODE_SUB_S    :$display("SUB_S    ");
    UCODE_FCLTU_D  :$display("FCLTU_D  ");
    UCODE_SLD_H    :$display("SLD_H    ");
    UCODE_SUB_PS   :$display("SUB_PS   ");
    UCODE_SLD_B    :$display("SLD_B    ");
    UCODE_FCLTU_W  :$display("FCLTU_W  ");
    UCODE_FEXP2_W  :$display("FEXP2_W  ");
    UCODE_MUL_PS   :$display("MUL_PS   ");
    UCODE_PCKOD_B  :$display("PCKOD_B  ");
    UCODE_CVT_S_W  :$display("CVT_S_W  ");
    UCODE_FEXP2_D  :$display("FEXP2_D  ");
    UCODE_ABS_S    :$display("ABS_S    ");
    UCODE_SE3L1_H  :$display("SE3L1_H  ");
    UCODE_MVTGR_U_B:$display("MVTGR_U_B");
    default:$display("UCODE_NOP");
    endcase
end
endfunction


function automatic void fdisplay_ucode_asm;
input integer fp;
input ucode_asm_t i_ucode_asm;
begin
    case(i_ucode_asm)
    UCODE_MIN_U_H  :$fdisplay(fp,"MIN_U_H  ");
    UCODE_PCKEV_H  :$fdisplay(fp,"PCKEV_H  ");
    UCODE_BINSL_W  :$fdisplay(fp,"BINSL_W  ");
    UCODE_MIN_U_B  :$fdisplay(fp,"MIN_U_B  ");
    UCODE_MIN_S_W  :$fdisplay(fp,"MIN_S_W  ");
    UCODE_PCKEV_B  :$fdisplay(fp,"PCKEV_B  ");
    UCODE_MVTG_S_H :$fdisplay(fp,"MVTG_S_H ");
    UCODE_MIN_U_D  :$fdisplay(fp,"MIN_U_D  ");
    UCODE_MIN_S_H  :$fdisplay(fp,"MIN_S_H  ");
    UCODE_BINSL_H  :$fdisplay(fp,"BINSL_H  ");
    UCODE_MIN_S_D  :$fdisplay(fp,"MIN_S_D  ");
    UCODE_BINSL_D  :$fdisplay(fp,"BINSL_D  ");
    UCODE_MIN_U_W  :$fdisplay(fp,"MIN_U_W  ");
    UCODE_BINSL_B  :$fdisplay(fp,"BINSL_B  ");
    UCODE_MIN_S_B  :$fdisplay(fp,"MIN_S_B  ");
    UCODE_CVT_W_D  :$fdisplay(fp,"CVT_W_D  ");
    UCODE_VSHF_D   :$fdisplay(fp,"VSHF_D   ");
    UCODE_VSHF_B   :$fdisplay(fp,"VSHF_B   ");
    UCODE_SAT_U_W  :$fdisplay(fp,"SAT_U_W  ");
    UCODE_DPADD_U_W:$fdisplay(fp,"DPADD_U_W");
    UCODE_VSHF_H   :$fdisplay(fp,"VSHF_H   ");
    UCODE_VSHF_W   :$fdisplay(fp,"VSHF_W   ");
    UCODE_SDXC1    :$fdisplay(fp,"SDXC1    ");
    UCODE_DPADD_U_H:$fdisplay(fp,"DPADD_U_H");
    UCODE_SAT_U_B  :$fdisplay(fp,"SAT_U_B  ");
    UCODE_SAT_U_D  :$fdisplay(fp,"SAT_U_D  ");
    UCODE_CVT_W_S  :$fdisplay(fp,"CVT_W_S  ");
    UCODE_SUB_D    :$fdisplay(fp,"SUB_D    ");
    UCODE_SAT_U_H  :$fdisplay(fp,"SAT_U_H  ");
    UCODE_PCKEV_D  :$fdisplay(fp,"PCKEV_D  ");
    UCODE_DPADD_U_D:$fdisplay(fp,"DPADD_U_D");
    UCODE_ADDS_A_D :$fdisplay(fp,"ADDS_A_D ");
    UCODE_PCNT_W   :$fdisplay(fp,"PCNT_W   ");
    UCODE_ROUND_W_D:$fdisplay(fp,"ROUND_W_D");
    UCODE_SRA_H    :$fdisplay(fp,"SRA_H    ");
    UCODE_PCNT_B   :$fdisplay(fp,"PCNT_B   ");
    UCODE_PCNT_D   :$fdisplay(fp,"PCNT_D   ");
    UCODE_ROUND_W_S:$fdisplay(fp,"ROUND_W_S");
    UCODE_SRA_B    :$fdisplay(fp,"SRA_B    ");
    UCODE_ADDS_A_H :$fdisplay(fp,"ADDS_A_H ");
    UCODE_MULV_W   :$fdisplay(fp,"MULV_W   ");
    UCODE_FMAX_A_W :$fdisplay(fp,"FMAX_A_W ");
    UCODE_FADD_D   :$fdisplay(fp,"FADD_D   ");
    UCODE_XOR_B    :$fdisplay(fp,"XOR_B    ");
    UCODE_CEIL_L_D :$fdisplay(fp,"CEIL_L_D ");
    UCODE_MULV_D   :$fdisplay(fp,"MULV_D   ");
    UCODE_SQRT_D   :$fdisplay(fp,"SQRT_D   ");
    UCODE_FADD_W   :$fdisplay(fp,"FADD_W   ");
    UCODE_FMAX_A_D :$fdisplay(fp,"FMAX_A_D ");
    UCODE_MSUBR_Q_H:$fdisplay(fp,"MSUBR_Q_H");
    UCODE_MULV_H   :$fdisplay(fp,"MULV_H   ");
    UCODE_FEXUPL_D :$fdisplay(fp,"FEXUPL_D ");
    UCODE_ADDS_U_H :$fdisplay(fp,"ADDS_U_H ");
    UCODE_ADDS_U_B :$fdisplay(fp,"ADDS_U_B ");
    UCODE_DPSUB_U_W:$fdisplay(fp,"DPSUB_U_W");
    UCODE_ADDS_U_D :$fdisplay(fp,"ADDS_U_D ");
    UCODE_FEXUPL_W :$fdisplay(fp,"FEXUPL_W ");
    UCODE_PCKEV_W  :$fdisplay(fp,"PCKEV_W  ");
    UCODE_ADDS_U_W :$fdisplay(fp,"ADDS_U_W ");
    UCODE_SWC1     :$fdisplay(fp,"SWC1     ");
    UCODE_FFQR_W   :$fdisplay(fp,"FFQR_W   ");
    UCODE_SLDR_B   :$fdisplay(fp,"SLDR_B   ");
    UCODE_S3IL2_B  :$fdisplay(fp,"S3IL2_B  ");
    UCODE_FFQL_D   :$fdisplay(fp,"FFQL_D   ");
    UCODE_FFQR_D   :$fdisplay(fp,"FFQR_D   ");
    UCODE_FFQL_W   :$fdisplay(fp,"FFQL_W   ");
    UCODE_MOVF_PS  :$fdisplay(fp,"MOVF_PS  ");
    UCODE_ADD_A_D  :$fdisplay(fp,"ADD_A_D  ");
    UCODE_DPADD_S_H:$fdisplay(fp,"DPADD_S_H");
    UCODE_S3IR1_W  :$fdisplay(fp,"S3IR1_W  ");
    UCODE_SAT_S_H  :$fdisplay(fp,"SAT_S_H  ");
    UCODE_DPADD_S_D:$fdisplay(fp,"DPADD_S_D");
    UCODE_FCLASS_W :$fdisplay(fp,"FCLASS_W ");
    UCODE_SAT_S_B  :$fdisplay(fp,"SAT_S_B  ");
    UCODE_ADDV_B   :$fdisplay(fp,"ADDV_B   ");
    UCODE_S3IR1_B  :$fdisplay(fp,"S3IR1_B  ");
    UCODE_ADDV_D   :$fdisplay(fp,"ADDV_D   ");
    UCODE_FCLASS_D :$fdisplay(fp,"FCLASS_D ");
    UCODE_S3IR1_H  :$fdisplay(fp,"S3IR1_H  ");
    UCODE_DPADD_S_W:$fdisplay(fp,"DPADD_S_W");
    UCODE_SUBV_B   :$fdisplay(fp,"SUBV_B   ");
    UCODE_LW       :$fdisplay(fp,"LW       ");
    UCODE_SUBV_D   :$fdisplay(fp,"SUBV_D   ");
    UCODE_ROUND_L_S:$fdisplay(fp,"ROUND_L_S");
    UCODE_DPSUB_U_D:$fdisplay(fp,"DPSUB_U_D");
    UCODE_SUBV_H   :$fdisplay(fp,"SUBV_H   ");
    UCODE_SRL_D    :$fdisplay(fp,"SRL_D    ");
    UCODE_SUBV_W   :$fdisplay(fp,"SUBV_W   ");
    UCODE_CFC1     :$fdisplay(fp,"CFC1     ");
    UCODE_SRL_W    :$fdisplay(fp,"SRL_W    ");
    UCODE_SE3L2_H  :$fdisplay(fp,"SE3L2_H  ");
    UCODE_BINSR_H  :$fdisplay(fp,"BINSR_H  ");
    UCODE_BSET_D   :$fdisplay(fp,"BSET_D   ");
    UCODE_SUBS_S_W :$fdisplay(fp,"SUBS_S_W ");
    UCODE_SE3L2_B  :$fdisplay(fp,"SE3L2_B  ");
    UCODE_BINSR_B  :$fdisplay(fp,"BINSR_B  ");
    UCODE_BINSR_D  :$fdisplay(fp,"BINSR_D  ");
    UCODE_BSET_H   :$fdisplay(fp,"BSET_H   ");
    UCODE_SUBS_S_B :$fdisplay(fp,"SUBS_S_B ");
    UCODE_COND_D   :$fdisplay(fp,"COND_D   ");
    UCODE_SUBS_S_D :$fdisplay(fp,"SUBS_S_D ");
    UCODE_MADD_Q_W :$fdisplay(fp,"MADD_Q_W ");
    UCODE_BINSR_W  :$fdisplay(fp,"BINSR_W  ");
    UCODE_SE3L2_W  :$fdisplay(fp,"SE3L2_W  ");
    UCODE_BCLR_D   :$fdisplay(fp,"BCLR_D   ");
    UCODE_MFHC1    :$fdisplay(fp,"MFHC1    ");
    UCODE_ALNV_PS  :$fdisplay(fp,"ALNV_PS  ");
    UCODE_ADD_PS   :$fdisplay(fp,"ADD_PS   ");
    UCODE_MULV_B   :$fdisplay(fp,"MULV_B   ");
    UCODE_BNEG_W   :$fdisplay(fp,"BNEG_W   ");
    UCODE_FEXUPR_W :$fdisplay(fp,"FEXUPR_W ");
    UCODE_BNEG_D   :$fdisplay(fp,"BNEG_D   ");
    UCODE_BCLR_B   :$fdisplay(fp,"BCLR_B   ");
    UCODE_TRUNC_W_D:$fdisplay(fp,"TRUNC_W_D");
    UCODE_LD       :$fdisplay(fp,"LD       ");
    UCODE_CFCMSA   :$fdisplay(fp,"CFCMSA   ");
    UCODE_FEXUPR_D :$fdisplay(fp,"FEXUPR_D ");
    UCODE_SLDR_D   :$fdisplay(fp,"SLDR_D   ");
    UCODE_TRUNC_W_S:$fdisplay(fp,"TRUNC_W_S");
    UCODE_MVTGR_U_H:$fdisplay(fp,"MVTGR_U_H");
    UCODE_DPSUB_S_H:$fdisplay(fp,"DPSUB_S_H");
    UCODE_FMUL_W   :$fdisplay(fp,"FMUL_W   ");
    UCODE_STV      :$fdisplay(fp,"STV      ");
    UCODE_ASUB_U_D :$fdisplay(fp,"ASUB_U_D ");
    UCODE_DPSUB_S_D:$fdisplay(fp,"DPSUB_S_D");
    UCODE_ASUB_U_B :$fdisplay(fp,"ASUB_U_B ");
    UCODE_PLU_PS   :$fdisplay(fp,"PLU_PS   ");
    UCODE_FMUL_D   :$fdisplay(fp,"FMUL_D   ");
    UCODE_DPSUB_U_H:$fdisplay(fp,"DPSUB_U_H");
    UCODE_DPSUB_S_W:$fdisplay(fp,"DPSUB_S_W");
    UCODE_SUBSS_U_W:$fdisplay(fp,"SUBSS_U_W");
    UCODE_SE3R0_B  :$fdisplay(fp,"SE3R0_B  ");
    UCODE_MVTG_S_B :$fdisplay(fp,"MVTG_S_B ");
    UCODE_SLD_D    :$fdisplay(fp,"SLD_D    ");
    UCODE_CLE_S_W  :$fdisplay(fp,"CLE_S_W  ");
    UCODE_FLOOR_L_S:$fdisplay(fp,"FLOOR_L_S");
    UCODE_SUBSS_U_D:$fdisplay(fp,"SUBSS_U_D");
    UCODE_SE3R0_W  :$fdisplay(fp,"SE3R0_W  ");
    UCODE_CLE_S_H  :$fdisplay(fp,"CLE_S_H  ");
    UCODE_SUBSS_U_B:$fdisplay(fp,"SUBSS_U_B");
    UCODE_CLE_S_D  :$fdisplay(fp,"CLE_S_D  ");
    UCODE_FLOOR_L_D:$fdisplay(fp,"FLOOR_L_D");
    UCODE_SUBSS_U_H:$fdisplay(fp,"SUBSS_U_H");
    UCODE_CLE_S_B  :$fdisplay(fp,"CLE_S_B  ");
    UCODE_MOVT_PS  :$fdisplay(fp,"MOVT_PS  ");
    UCODE_AVE_S_B  :$fdisplay(fp,"AVE_S_B  ");
    UCODE_SWXC1    :$fdisplay(fp,"SWXC1    ");
    UCODE_MVTG_S_W :$fdisplay(fp,"MVTG_S_W ");
    UCODE_ASUB_U_W :$fdisplay(fp,"ASUB_U_W ");
    UCODE_LV       :$fdisplay(fp,"LV       ");
    UCODE_ADDS_A_B :$fdisplay(fp,"ADDS_A_B ");
    UCODE_AVE_S_D  :$fdisplay(fp,"AVE_S_D  ");
    UCODE_SE3L0_W  :$fdisplay(fp,"SE3L0_W  ");
    UCODE_ADDS_A_W :$fdisplay(fp,"ADDS_A_W ");
    UCODE_SE3L0_H  :$fdisplay(fp,"SE3L0_H  ");
    UCODE_SRA_W    :$fdisplay(fp,"SRA_W    ");
    UCODE_BMZ_B    :$fdisplay(fp,"BMZ_B    ");
    UCODE_DIV_S    :$fdisplay(fp,"DIV_S    ");
    UCODE_SE3L0_B  :$fdisplay(fp,"SE3L0_B  ");
    UCODE_MVTGR_S_B:$fdisplay(fp,"MVTGR_S_B");
    UCODE_ADDS_S_D :$fdisplay(fp,"ADDS_S_D ");
    UCODE_ADDS_S_B :$fdisplay(fp,"ADDS_S_B ");
    UCODE_MIN_A_W  :$fdisplay(fp,"MIN_A_W  ");
    UCODE_MSUB_PS  :$fdisplay(fp,"MSUB_PS  ");
    UCODE_ADDS_S_H :$fdisplay(fp,"ADDS_S_H ");
    UCODE_ADDS_S_W :$fdisplay(fp,"ADDS_S_W ");
    UCODE_S3IL1_B  :$fdisplay(fp,"S3IL1_B  ");
    UCODE_MIN_A_H  :$fdisplay(fp,"MIN_A_H  ");
    UCODE_MIN_A_D  :$fdisplay(fp,"MIN_A_D  ");
    UCODE_MIN_A_B  :$fdisplay(fp,"MIN_A_B  ");
    UCODE_S3IL1_H  :$fdisplay(fp,"S3IL1_H  ");
    UCODE_MVFGE_W  :$fdisplay(fp,"MVFGE_W  ");
    UCODE_SUBS_U_H :$fdisplay(fp,"SUBS_U_H ");
    UCODE_SUBS_U_D :$fdisplay(fp,"SUBS_U_D ");
    UCODE_SUBS_U_B :$fdisplay(fp,"SUBS_U_B ");
    UCODE_FRINT_D  :$fdisplay(fp,"FRINT_D  ");
    UCODE_MVTGR_U_W:$fdisplay(fp,"MVTGR_U_W");
    UCODE_PCNT_H   :$fdisplay(fp,"PCNT_H   ");
    UCODE_SUBS_U_W :$fdisplay(fp,"SUBS_U_W ");
    UCODE_ADD_A_W  :$fdisplay(fp,"ADD_A_W  ");
    UCODE_FRINT_W  :$fdisplay(fp,"FRINT_W  ");
    UCODE_SRA_D    :$fdisplay(fp,"SRA_D    ");
    UCODE_SUBS_S_H :$fdisplay(fp,"SUBS_S_H ");
    UCODE_SE3R2_W  :$fdisplay(fp,"SE3R2_W  ");
    UCODE_FCLE_W   :$fdisplay(fp,"FCLE_W   ");
    UCODE_MOVE_H   :$fdisplay(fp,"MOVE_H   ");
    UCODE_MOVE_D   :$fdisplay(fp,"MOVE_D   ");
    UCODE_MOVE_B   :$fdisplay(fp,"MOVE_B   ");
    UCODE_FCLE_D   :$fdisplay(fp,"FCLE_D   ");
    UCODE_SE3R2_B  :$fdisplay(fp,"SE3R2_B  ");
    UCODE_MOVE_W   :$fdisplay(fp,"MOVE_W   ");
    UCODE_MOVE_V   :$fdisplay(fp,"MOVE_V   ");
    UCODE_SE3R2_H  :$fdisplay(fp,"SE3R2_H  ");
    UCODE_MSUBR_Q_W:$fdisplay(fp,"MSUBR_Q_W");
    UCODE_SLDR_H   :$fdisplay(fp,"SLDR_H   ");
    UCODE_S3IL0_B  :$fdisplay(fp,"S3IL0_B  ");
    UCODE_NLZC_H   :$fdisplay(fp,"NLZC_H   ");
    UCODE_BC1F     :$fdisplay(fp,"BC1F     ");
    UCODE_CLT_S_H  :$fdisplay(fp,"CLT_S_H  ");
    UCODE_AVE_U_D  :$fdisplay(fp,"AVE_U_D  ");
    UCODE_MSUBV_W  :$fdisplay(fp,"MSUBV_W  ");
    UCODE_AVE_U_B  :$fdisplay(fp,"AVE_U_B  ");
    UCODE_CLT_S_B  :$fdisplay(fp,"CLT_S_B  ");
    UCODE_CLE_U_H  :$fdisplay(fp,"CLE_U_H  ");
    UCODE_CLT_S_D  :$fdisplay(fp,"CLT_S_D  ");
    UCODE_AVE_U_H  :$fdisplay(fp,"AVE_U_H  ");
    UCODE_MSUBV_D  :$fdisplay(fp,"MSUBV_D  ");
    UCODE_BMNZ_B   :$fdisplay(fp,"BMNZ_B   ");
    UCODE_AVE_U_W  :$fdisplay(fp,"AVE_U_W  ");
    UCODE_CLE_U_W  :$fdisplay(fp,"CLE_U_W  ");
    UCODE_MSUBV_B  :$fdisplay(fp,"MSUBV_B  ");
    UCODE_MSUBV_H  :$fdisplay(fp,"MSUBV_H  ");
    UCODE_CLT_S_W  :$fdisplay(fp,"CLT_S_W  ");
    UCODE_CLT_U_W  :$fdisplay(fp,"CLT_U_W  ");
    UCODE_MADDV_W  :$fdisplay(fp,"MADDV_W  ");
    UCODE_CLT_U_H  :$fdisplay(fp,"CLT_U_H  ");
    UCODE_CLT_U_D  :$fdisplay(fp,"CLT_U_D  ");
    UCODE_CLT_U_B  :$fdisplay(fp,"CLT_U_B  ");
    UCODE_BC1T     :$fdisplay(fp,"BC1T     ");
    UCODE_NLOC_W   :$fdisplay(fp,"NLOC_W   ");
    UCODE_CTCMSA   :$fdisplay(fp,"CTCMSA   ");
    UCODE_NLOC_B   :$fdisplay(fp,"NLOC_B   ");
    UCODE_NLOC_D   :$fdisplay(fp,"NLOC_D   ");
    UCODE_MVTGR_S_W:$fdisplay(fp,"MVTGR_S_W");
    UCODE_NLOC_H   :$fdisplay(fp,"NLOC_H   ");
    UCODE_ASUB_S_W :$fdisplay(fp,"ASUB_S_W ");
    UCODE_AVE_S_W  :$fdisplay(fp,"AVE_S_W  ");
    UCODE_MVTG_U_B :$fdisplay(fp,"MVTG_U_B ");
    UCODE_CEIL_L_S :$fdisplay(fp,"CEIL_L_S ");
    UCODE_ASUB_U_H :$fdisplay(fp,"ASUB_U_H ");
    UCODE_MVTG_U_H :$fdisplay(fp,"MVTG_U_H ");
    UCODE_ASUB_S_D :$fdisplay(fp,"ASUB_S_D ");
    UCODE_MVTG_U_W :$fdisplay(fp,"MVTG_U_W ");
    UCODE_MOVN_DP  :$fdisplay(fp,"MOVN_DP  ");
    UCODE_ASUB_S_B :$fdisplay(fp,"ASUB_S_B ");
    UCODE_AVE_S_H  :$fdisplay(fp,"AVE_S_H  ");
    UCODE_ASUB_S_H :$fdisplay(fp,"ASUB_S_H ");
    UCODE_MOVZ_DP  :$fdisplay(fp,"MOVZ_DP  ");
    UCODE_TRUNC_L_S:$fdisplay(fp,"TRUNC_L_S");
    UCODE_NLZC_W   :$fdisplay(fp,"NLZC_W   ");
    UCODE_TRUNC_L_D:$fdisplay(fp,"TRUNC_L_D");
    UCODE_SRL_H    :$fdisplay(fp,"SRL_H    ");
    UCODE_NLZC_B   :$fdisplay(fp,"NLZC_B   ");
    UCODE_SRL_B    :$fdisplay(fp,"SRL_B    ");
    UCODE_NLZC_D   :$fdisplay(fp,"NLZC_D   ");
    UCODE_FMIN_A_D :$fdisplay(fp,"FMIN_A_D ");
    UCODE_ADD_A_H  :$fdisplay(fp,"ADD_A_H  ");
    UCODE_FMIN_A_W :$fdisplay(fp,"FMIN_A_W ");
    UCODE_FMADD_W  :$fdisplay(fp,"FMADD_W  ");
    UCODE_NMSUB_PS :$fdisplay(fp,"NMSUB_PS ");
    UCODE_ADDV_H   :$fdisplay(fp,"ADDV_H   ");
    UCODE_ADDV_W   :$fdisplay(fp,"ADDV_W   ");
    UCODE_FMADD_D  :$fdisplay(fp,"FMADD_D  ");
    UCODE_MADDV_D  :$fdisplay(fp,"MADDV_D  ");
    UCODE_CLE_U_D  :$fdisplay(fp,"CLE_U_D  ");
    UCODE_CLE_U_B  :$fdisplay(fp,"CLE_U_B  ");
    UCODE_FTQ_H    :$fdisplay(fp,"FTQ_H    ");
    UCODE_MAX_S_B  :$fdisplay(fp,"MAX_S_B  ");
    UCODE_MAX_U_W  :$fdisplay(fp,"MAX_U_W  ");
    UCODE_MAX_S_D  :$fdisplay(fp,"MAX_S_D  ");
    UCODE_MAX_S_H  :$fdisplay(fp,"MAX_S_H  ");
    UCODE_MAX_U_D  :$fdisplay(fp,"MAX_U_D  ");
    UCODE_MAX_S_W  :$fdisplay(fp,"MAX_S_W  ");
    UCODE_MAX_U_B  :$fdisplay(fp,"MAX_U_B  ");
    UCODE_MAX_U_H  :$fdisplay(fp,"MAX_U_H  ");
    UCODE_MAX_A_B  :$fdisplay(fp,"MAX_A_B  ");
    UCODE_MAX_A_D  :$fdisplay(fp,"MAX_A_D  ");
    UCODE_CVT_PS_S :$fdisplay(fp,"CVT_PS_S ");
    UCODE_MAX_A_H  :$fdisplay(fp,"MAX_A_H  ");
    UCODE_MAX_A_W  :$fdisplay(fp,"MAX_A_W  ");
    UCODE_ILVL_W   :$fdisplay(fp,"ILVL_W   ");
    UCODE_ILVR_H   :$fdisplay(fp,"ILVR_H   ");
    UCODE_ILVR_B   :$fdisplay(fp,"ILVR_B   ");
    UCODE_ILVR_D   :$fdisplay(fp,"ILVR_D   ");
    UCODE_ILVL_D   :$fdisplay(fp,"ILVL_D   ");
    UCODE_ILVL_B   :$fdisplay(fp,"ILVL_B   ");
    UCODE_ILVR_W   :$fdisplay(fp,"ILVR_W   ");
    UCODE_ILVL_H   :$fdisplay(fp,"ILVL_H   ");
    UCODE_MUL_D    :$fdisplay(fp,"MUL_D    ");
    UCODE_FDIV_D   :$fdisplay(fp,"FDIV_D   ");
    UCODE_MTHC1    :$fdisplay(fp,"MTHC1    ");
    UCODE_PCKOD_H  :$fdisplay(fp,"PCKOD_H  ");
    UCODE_PCKOD_D  :$fdisplay(fp,"PCKOD_D  ");
    UCODE_BSEL_B   :$fdisplay(fp,"BSEL_B   ");
    UCODE_MSUB_D   :$fdisplay(fp,"MSUB_D   ");
    UCODE_FDIV_W   :$fdisplay(fp,"FDIV_W   ");
    UCODE_MUL_S    :$fdisplay(fp,"MUL_S    ");
    UCODE_PCKOD_W  :$fdisplay(fp,"PCKOD_W  ");
    UCODE_MSUB_S   :$fdisplay(fp,"MSUB_S   ");
    UCODE_CEIL_W_D :$fdisplay(fp,"CEIL_W_D ");
    UCODE_CEIL_W_S :$fdisplay(fp,"CEIL_W_S ");
    UCODE_SQRT_S   :$fdisplay(fp,"SQRT_S   ");
    UCODE_MADDR_Q_W:$fdisplay(fp,"MADDR_Q_W");
    UCODE_MOV_PS   :$fdisplay(fp,"MOV_PS   ");
    UCODE_BCLR_W   :$fdisplay(fp,"BCLR_W   ");
    UCODE_SLDR_W   :$fdisplay(fp,"SLDR_W   ");
    UCODE_ADD_A_B  :$fdisplay(fp,"ADD_A_B  ");
    UCODE_BNZ_D    :$fdisplay(fp,"BNZ_D    ");
    UCODE_ROUND_L_D:$fdisplay(fp,"ROUND_L_D");
    UCODE_RECIP_S  :$fdisplay(fp,"RECIP_S  ");
    UCODE_MTC1     :$fdisplay(fp,"MTC1     ");
    UCODE_BCLR_H   :$fdisplay(fp,"BCLR_H   ");
    UCODE_MADDR_Q_H:$fdisplay(fp,"MADDR_Q_H");
    UCODE_MVTGR_S_H:$fdisplay(fp,"MVTGR_S_H");
    UCODE_S3IL1_W  :$fdisplay(fp,"S3IL1_W  ");
    UCODE_PUL_PS   :$fdisplay(fp,"PUL_PS   ");
    UCODE_SAT_S_W  :$fdisplay(fp,"SAT_S_W  ");
    UCODE_FTQ_W    :$fdisplay(fp,"FTQ_W    ");
    UCODE_MOV_D    :$fdisplay(fp,"MOV_D    ");
    UCODE_MOV_S    :$fdisplay(fp,"MOV_S    ");
    UCODE_MADDV_H  :$fdisplay(fp,"MADDV_H  ");
    UCODE_SE3L1_B  :$fdisplay(fp,"SE3L1_B  ");
    UCODE_FTINT_S_W:$fdisplay(fp,"FTINT_S_W");
    UCODE_MUL_Q_W  :$fdisplay(fp,"MUL_Q_W  ");
    UCODE_MADDV_B  :$fdisplay(fp,"MADDV_B  ");
    UCODE_FCEQU_W  :$fdisplay(fp,"FCEQU_W  ");
    UCODE_FMAX_W   :$fdisplay(fp,"FMAX_W   ");
    UCODE_SE3L1_W  :$fdisplay(fp,"SE3L1_W  ");
    UCODE_OR_B     :$fdisplay(fp,"OR_B     ");
    UCODE_FTINT_S_D:$fdisplay(fp,"FTINT_S_D");
    UCODE_MUL_Q_H  :$fdisplay(fp,"MUL_Q_H  ");
    UCODE_SLD_W    :$fdisplay(fp,"SLD_W    ");
    UCODE_FMAX_D   :$fdisplay(fp,"FMAX_D   ");
    UCODE_FCEQU_D  :$fdisplay(fp,"FCEQU_D  ");
    UCODE_PUU_PS   :$fdisplay(fp,"PUU_PS   ");
    UCODE_SHF_W    :$fdisplay(fp,"SHF_W    ");
    UCODE_CTC1     :$fdisplay(fp,"CTC1     ");
    UCODE_SHF_B    :$fdisplay(fp,"SHF_B    ");
    UCODE_SHF_H    :$fdisplay(fp,"SHF_H    ");
    UCODE_CEQ_W    :$fdisplay(fp,"CEQ_W    ");
    UCODE_SAT_S_D  :$fdisplay(fp,"SAT_S_D  ");
    UCODE_CVT_L_D  :$fdisplay(fp,"CVT_L_D  ");
    UCODE_FSUB_D   :$fdisplay(fp,"FSUB_D   ");
    UCODE_NMADD_S  :$fdisplay(fp,"NMADD_S  ");
    UCODE_CVT_L_S  :$fdisplay(fp,"CVT_L_S  ");
    UCODE_CEQ_D    :$fdisplay(fp,"CEQ_D    ");
    UCODE_PLL_PS   :$fdisplay(fp,"PLL_PS   ");
    UCODE_CEQ_B    :$fdisplay(fp,"CEQ_B    ");
    UCODE_NOR_B    :$fdisplay(fp,"NOR_B    ");
    UCODE_FSUB_W   :$fdisplay(fp,"FSUB_W   ");
    UCODE_NMADD_D  :$fdisplay(fp,"NMADD_D  ");
    UCODE_CEQ_H    :$fdisplay(fp,"CEQ_H    ");
    UCODE_FFINT_S_W:$fdisplay(fp,"FFINT_S_W");
    UCODE_FTINT_U_D:$fdisplay(fp,"FTINT_U_D");
    UCODE_S3IR2_B  :$fdisplay(fp,"S3IR2_B  ");
    UCODE_FMSUB_W  :$fdisplay(fp,"FMSUB_W  ");
    UCODE_FEXDO_H  :$fdisplay(fp,"FEXDO_H  ");
    UCODE_S3IR2_H  :$fdisplay(fp,"S3IR2_H  ");
    UCODE_FTINT_U_W:$fdisplay(fp,"FTINT_U_W");
    UCODE_FEXDO_W  :$fdisplay(fp,"FEXDO_W  ");
    UCODE_FMSUB_D  :$fdisplay(fp,"FMSUB_D  ");
    UCODE_ILVOD_W  :$fdisplay(fp,"ILVOD_W  ");
    UCODE_FSQRT_W  :$fdisplay(fp,"FSQRT_W  ");
    UCODE_ILVOD_B  :$fdisplay(fp,"ILVOD_B  ");
    UCODE_ILVOD_D  :$fdisplay(fp,"ILVOD_D  ");
    UCODE_ILVOD_H  :$fdisplay(fp,"ILVOD_H  ");
    UCODE_FCEQ_D   :$fdisplay(fp,"FCEQ_D   ");
    UCODE_LDI_W    :$fdisplay(fp,"LDI_W    ");
    UCODE_AND_B    :$fdisplay(fp,"AND_B    ");
    UCODE_LDI_H    :$fdisplay(fp,"LDI_H    ");
    UCODE_FCEQ_W   :$fdisplay(fp,"FCEQ_W   ");
    UCODE_LDI_B    :$fdisplay(fp,"LDI_B    ");
    UCODE_LDI_D    :$fdisplay(fp,"LDI_D    ");
    UCODE_S3IR0_W  :$fdisplay(fp,"S3IR0_W  ");
    UCODE_DOTP_S_W :$fdisplay(fp,"DOTP_S_W ");
    UCODE_FFINT_S_D:$fdisplay(fp,"FFINT_S_D");
    UCODE_BSET_B   :$fdisplay(fp,"BSET_B   ");
    UCODE_S3IR0_B  :$fdisplay(fp,"S3IR0_B  ");
    UCODE_DOTP_S_D :$fdisplay(fp,"DOTP_S_D ");
    UCODE_DOTP_S_H :$fdisplay(fp,"DOTP_S_H ");
    UCODE_S3IR0_H  :$fdisplay(fp,"S3IR0_H  ");
    UCODE_DOTP_U_D :$fdisplay(fp,"DOTP_U_D ");
    UCODE_FSQRT_D  :$fdisplay(fp,"FSQRT_D  ");
    UCODE_MOVER_W  :$fdisplay(fp,"MOVER_W  ");
    UCODE_DOTP_U_H :$fdisplay(fp,"DOTP_U_H ");
    UCODE_DOTP_U_W :$fdisplay(fp,"DOTP_U_W ");
    UCODE_MOVER_H  :$fdisplay(fp,"MOVER_H  ");
    UCODE_MOVER_D  :$fdisplay(fp,"MOVER_D  ");
    UCODE_MOVER_B  :$fdisplay(fp,"MOVER_B  ");
    UCODE_CVT_S_L  :$fdisplay(fp,"CVT_S_L  ");
    UCODE_BNEG_H   :$fdisplay(fp,"BNEG_H   ");
    UCODE_BNEG_B   :$fdisplay(fp,"BNEG_B   ");
    UCODE_ABS_PS   :$fdisplay(fp,"ABS_PS   ");
    UCODE_FCUN_D   :$fdisplay(fp,"FCUN_D   ");
    UCODE_MOVZ_S   :$fdisplay(fp,"MOVZ_S   ");
    UCODE_NEG_PS   :$fdisplay(fp,"NEG_PS   ");
    UCODE_FCUN_W   :$fdisplay(fp,"FCUN_W   ");
    UCODE_S3IR2_W  :$fdisplay(fp,"S3IR2_W  ");
    UCODE_FCLT_W   :$fdisplay(fp,"FCLT_W   ");
    UCODE_CVT_S_D  :$fdisplay(fp,"CVT_S_D  ");
    UCODE_NMADD_PS :$fdisplay(fp,"NMADD_PS ");
    UCODE_MOVN_S   :$fdisplay(fp,"MOVN_S   ");
    UCODE_MVFGE_H  :$fdisplay(fp,"MVFGE_H  ");
    UCODE_SE3R0_H  :$fdisplay(fp,"SE3R0_H  ");
    UCODE_FCLT_D   :$fdisplay(fp,"FCLT_D   ");
    UCODE_MVFGE_B  :$fdisplay(fp,"MVFGE_B  ");
    UCODE_ADD_S    :$fdisplay(fp,"ADD_S    ");
    UCODE_FCLEU_D  :$fdisplay(fp,"FCLEU_D  ");
    UCODE_MOVF_S   :$fdisplay(fp,"MOVF_S   ");
    UCODE_MFC1     :$fdisplay(fp,"MFC1     ");
    UCODE_ADD_D    :$fdisplay(fp,"ADD_D    ");
    UCODE_FCLEU_W  :$fdisplay(fp,"FCLEU_W  ");
    UCODE_MOVF_D   :$fdisplay(fp,"MOVF_D   ");
    UCODE_SHL_W    :$fdisplay(fp,"SHL_W    ");
    UCODE_CVT_D_S  :$fdisplay(fp,"CVT_D_S  ");
    UCODE_MVFGER_W :$fdisplay(fp,"MVFGER_W ");
    UCODE_CVT_D_W  :$fdisplay(fp,"CVT_D_W  ");
    UCODE_SHL_B    :$fdisplay(fp,"SHL_B    ");
    UCODE_MVFGER_H :$fdisplay(fp,"MVFGER_H ");
    UCODE_SHL_D    :$fdisplay(fp,"SHL_D    ");
    UCODE_CVT_D_L  :$fdisplay(fp,"CVT_D_L  ");
    UCODE_SHL_H    :$fdisplay(fp,"SHL_H    ");
    UCODE_MVFGER_B :$fdisplay(fp,"MVFGER_B ");
    UCODE_MVFG_W   :$fdisplay(fp,"MVFG_W   ");
    UCODE_MOVF     :$fdisplay(fp,"MOVF     ");
    UCODE_COND_S   :$fdisplay(fp,"COND_S   ");
    UCODE_SE3R1_B  :$fdisplay(fp,"SE3R1_B  ");
    UCODE_MVFG_B   :$fdisplay(fp,"MVFG_B   ");
    UCODE_MADD_Q_H :$fdisplay(fp,"MADD_Q_H ");
    UCODE_MOVT     :$fdisplay(fp,"MOVT     ");
    UCODE_MVFG_H   :$fdisplay(fp,"MVFG_H   ");
    UCODE_RSQRT_S  :$fdisplay(fp,"RSQRT_S  ");
    UCODE_SE3R1_H  :$fdisplay(fp,"SE3R1_H  ");
    UCODE_RSQRT_D  :$fdisplay(fp,"RSQRT_D  ");
    UCODE_FLOOR_W_D:$fdisplay(fp,"FLOOR_W_D");
    UCODE_RECIP_D  :$fdisplay(fp,"RECIP_D  ");
    UCODE_FMIN_D   :$fdisplay(fp,"FMIN_D   ");
    UCODE_BNZ_V    :$fdisplay(fp,"BNZ_V    ");
    UCODE_CVT_S_PL :$fdisplay(fp,"CVT_S_PL ");
    UCODE_S3IL2_W  :$fdisplay(fp,"S3IL2_W  ");
    UCODE_S3IL2_H  :$fdisplay(fp,"S3IL2_H  ");
    UCODE_FLOOR_W_S:$fdisplay(fp,"FLOOR_W_S");
    UCODE_BNZ_H    :$fdisplay(fp,"BNZ_H    ");
    UCODE_CVT_S_PU :$fdisplay(fp,"CVT_S_PU ");
    UCODE_FMIN_W   :$fdisplay(fp,"FMIN_W   ");
    UCODE_BNZ_W    :$fdisplay(fp,"BNZ_W    ");
    UCODE_BNZ_B    :$fdisplay(fp,"BNZ_B    ");
    UCODE_SE3R1_W  :$fdisplay(fp,"SE3R1_W  ");
    UCODE_MOVT_S   :$fdisplay(fp,"MOVT_S   ");
    UCODE_MADD_PS  :$fdisplay(fp,"MADD_PS  ");
    UCODE_MOVT_D   :$fdisplay(fp,"MOVT_D   ");
    UCODE_BZ_H     :$fdisplay(fp,"BZ_H     ");
    UCODE_BZ_B     :$fdisplay(fp,"BZ_B     ");
    UCODE_BZ_D     :$fdisplay(fp,"BZ_D     ");
    UCODE_BZ_V     :$fdisplay(fp,"BZ_V     ");
    UCODE_BZ_W     :$fdisplay(fp,"BZ_W     ");
    UCODE_FFINT_U_D:$fdisplay(fp,"FFINT_U_D");
    UCODE_BSET_W   :$fdisplay(fp,"BSET_W   ");
    UCODE_ILVEV_W  :$fdisplay(fp,"ILVEV_W  ");
    UCODE_FFINT_U_W:$fdisplay(fp,"FFINT_U_W");
    UCODE_ILVEV_H  :$fdisplay(fp,"ILVEV_H  ");
    UCODE_ILVEV_D  :$fdisplay(fp,"ILVEV_D  ");
    UCODE_ILVEV_B  :$fdisplay(fp,"ILVEV_B  ");
    UCODE_NMSUB_D  :$fdisplay(fp,"NMSUB_D  ");
    UCODE_FLOG2_D  :$fdisplay(fp,"FLOG2_D  ");
    UCODE_MULR_Q_W :$fdisplay(fp,"MULR_Q_W ");
    UCODE_SDC1     :$fdisplay(fp,"SDC1     ");
    UCODE_DIV_D    :$fdisplay(fp,"DIV_D    ");
    UCODE_FLOG2_W  :$fdisplay(fp,"FLOG2_W  ");
    UCODE_NMSUB_S  :$fdisplay(fp,"NMSUB_S  ");
    UCODE_MULR_Q_H :$fdisplay(fp,"MULR_Q_H ");
    UCODE_COND_P   :$fdisplay(fp,"COND_P   ");
    UCODE_S3IL0_H  :$fdisplay(fp,"S3IL0_H  ");
    UCODE_S3IL0_W  :$fdisplay(fp,"S3IL0_W  ");
    UCODE_ABS_D    :$fdisplay(fp,"ABS_D    ");
    UCODE_MSUB_Q_W :$fdisplay(fp,"MSUB_Q_W ");
    UCODE_MSUB_Q_H :$fdisplay(fp,"MSUB_Q_H ");
    UCODE_MADD_S   :$fdisplay(fp,"MADD_S   ");
    UCODE_NEG_S    :$fdisplay(fp,"NEG_S    ");
    UCODE_NEG_D    :$fdisplay(fp,"NEG_D    ");
    UCODE_MADD_D   :$fdisplay(fp,"MADD_D   ");
    UCODE_SUB_S    :$fdisplay(fp,"SUB_S    ");
    UCODE_FCLTU_D  :$fdisplay(fp,"FCLTU_D  ");
    UCODE_SLD_H    :$fdisplay(fp,"SLD_H    ");
    UCODE_SUB_PS   :$fdisplay(fp,"SUB_PS   ");
    UCODE_SLD_B    :$fdisplay(fp,"SLD_B    ");
    UCODE_FCLTU_W  :$fdisplay(fp,"FCLTU_W  ");
    UCODE_FEXP2_W  :$fdisplay(fp,"FEXP2_W  ");
    UCODE_MUL_PS   :$fdisplay(fp,"MUL_PS   ");
    UCODE_PCKOD_B  :$fdisplay(fp,"PCKOD_B  ");
    UCODE_CVT_S_W  :$fdisplay(fp,"CVT_S_W  ");
    UCODE_FEXP2_D  :$fdisplay(fp,"FEXP2_D  ");
    UCODE_ABS_S    :$fdisplay(fp,"ABS_S    ");
    UCODE_SE3L1_H  :$fdisplay(fp,"SE3L1_H  ");
    UCODE_MVTGR_U_B:$fdisplay(fp,"MVTGR_U_B");
    default: $fdisplay(fp,"UCODE_NOP");
    endcase
end
endfunction

//============================================================
//generate xrw channel 
//============================================================
task automatic fxu_chan_xrw_gen;
input [31:0] i_insn ; 
output       o_xr_enb;
output       o_xw_enb;
begin

    o_xr_enb=0;
    casex(i_insn)
    32'b0111101110000010xxxxxxxxxx001111,//MVFG.W
    32'b0111100010111110xxxxxxxxxx011010,//CTCMSA
    32'b01000100110xxxxxxxxxx00000000000,//CTC1
    32'b01000110000xxxxxxxxxxxxxxx010010,//MOVZ.S
    32'b0111101110000000xxxxxxxxxx001111,//MVFG.B
    32'b01000110001xxxxxxxxxxxxxxx010010,//MOVZ.D
    32'b0111101110000001xxxxxxxxxx001111,//MVFG.H
    32'b01000110001xxxxxxxxxxxxxxx010011,//MOVN.D
    32'b0111100100110xxxxxxxxxxxxx011010,//MVFGE.W
    32'b010011xxxxxxxxxxxxxxxxxxxx011110,//ALNV.PS
    32'b01111001100xxxxxxxxxxxxxxx010110,//SLDR.B
    32'b01000110000xxxxxxxxxxxxxxx010011,//MOVN.S
    32'b011110010010xxxxxxxxxxxxxx011010,//MVFGE.H
    32'b01111001111xxxxxxxxxxxxxxx010110,//SLDR.D
    32'b01000100100xxxxxxxxxx00000000000,//MTC1
    32'b01111001000xxxxxxxxxxxxxxx011010,//MVFGE.B
    32'b01111001010xxxxxxxxxxxxxxx010110,//MVTGR_U.W
    32'b01000110110xxxxxxxxxxxxxxx010011,//MOVN.PS
    32'b01000110110xxxxxxxxxxxxxxx010010,//MOVZ.PS
    32'b01111000110xxxxxxxxxxxxxxx010110,//MVTGR_S.W
    32'b01111000101xxxxxxxxxxxxxxx010110,//MVTGR_S.H
    32'b01111001000xxxxxxxxxxxxxxx010110,//MVTGR_U.B
    32'b01111001110xxxxxxxxxxxxxxx010110,//SLDR.W
    32'b01111000100xxxxxxxxxxxxxxx010110,//MVTGR_S.B
    32'b01111001001xxxxxxxxxxxxxxx010110,//MVTGR_U.H
    32'b01111001101xxxxxxxxxxxxxxx010110,//SLDR.H
    32'b01000100111xxxxxxxxxx00000000000,//MTHC1
    32'b01111000010xxxxxxxxxxxxxxx010110,//MOVER.W
    32'b01111010010xxxxxxxxxxxxxxx010110,//MVFGER.W
    32'b01111010001xxxxxxxxxxxxxxx010110,//MVFGER.H
    32'b01111000001xxxxxxxxxxxxxxx010110,//MOVER.H
    32'b01111010000xxxxxxxxxxxxxxx010110,//MVFGER.B
    32'b01111000011xxxxxxxxxxxxxxx010110,//MOVER.D
    32'b01111000000xxxxxxxxxxxxxxx010110://MOVER.B
        o_xr_enb=1;
   endcase

    o_xw_enb=0;
    casex(i_insn)
    32'b01111001010xxxxxxxxxxxxxxx010110,//MVTGR_U.W
    32'b011110001010xxxxxxxxxxxxxx011010,//MVTG_S.H
    32'b01111000110xxxxxxxxxxxxxxx011010,//MVTG_U.B
    32'b0111100011111110xxxxxxxxxx011010,//CFCMSA
    32'b01111000100xxxxxxxxxxxxxxx011010,//MVTG_S.B
    32'b01000100000xxxxxxxxxx00000000000,//MFC1
    32'b011110001110xxxxxxxxxxxxxx011010,//MVTG_U.H
    32'b01111000110xxxxxxxxxxxxxxx010110,//MVTGR_S.W
    32'b01111000101xxxxxxxxxxxxxxx010110,//MVTGR_S.H
    32'b01000100011xxxxxxxxxx00000000000,//MFHC1
    32'b01000100010xxxxxxxxxx00000000000,//CFC1
    32'b01111001000xxxxxxxxxxxxxxx010110,//MVTGR_U.B
    32'b0111100011110xxxxxxxxxxxxx011010,//MVTG_U.W
    32'b01111000100xxxxxxxxxxxxxxx010110,//MVTGR_S.B
    32'b0111100010110xxxxxxxxxxxxx011010,//MVTG_S.W
    32'b01111001001xxxxxxxxxxxxxxx010110://MVTGR_U.H
        o_xw_enb=1;
   endcase

end
endtask

//============================================================
//generate xl channel 
//============================================================
task automatic fxu_chan_xl_gen;
    input  [31:0] i_insn      ;
    output        o_xl_enb    ;
    output        o_xl_word   ;
    output        o_xl_double ;
    output        o_xl_quad   ;
begin

    o_xl_enb    =1'b0;
    o_xl_word   =1'b0;
    o_xl_double =1'b0;
    o_xl_quad   =1'b0;
    casex(i_insn)
    32'b01111001011xxxxxxxxxxxxxxx001111,//LD.V
    32'b01111001100xxxxxxxxxxxxxxx001111://LDX.V
        begin
        o_xl_enb    =1;
        o_xl_quad   =1;
        end
    32'b110101xxxxxxxxxxxxxxxxxxxxxxxxxx,//LDC1
    32'b010011xxxxxxxxxx00000xxxxx000001,//LDXC1
    32'b010011xxxxxxxxxx00000xxxxx000101://LUXC1
        begin
        o_xl_enb    =1;
        o_xl_double =1;
        end
    32'b110001xxxxxxxxxxxxxxxxxxxxxxxxxx,//LWC1
    32'b010011xxxxxxxxxx00000xxxxx000000://LWXC1
        begin
        o_xl_enb    =1;
        o_xl_word   =1;
        end
endcase

end
endtask

//============================================================
//generate xs channel 
//============================================================
task automatic fxu_chan_xs_gen;
    input  [31:0] i_insn      ;
    output        o_xs_enb    ;
    output        o_xs_word   ;
    output        o_xs_double ;
    output        o_xs_quad   ;
begin

    o_xs_enb    =1'b0;
    o_xs_word   =1'b0;
    o_xs_double =1'b0;
    o_xs_quad   =1'b0;
    casex(i_insn)
    32'b01111001101xxxxxxxxxxxxxxx001111,//ST.V
    32'b01111001110xxxxxxxxxxxxxxx001111://STX.V
        begin
        o_xs_enb    =1;
        o_xs_quad   =1;
        end
    32'b111101xxxxxxxxxxxxxxxxxxxxxxxxxx,//SDC1
    32'b010011xxxxxxxxxxxxxxx00000001001,//SDXC1
    32'b010011xxxxxxxxxxxxxxx00000001101://SUXC1
        begin
        o_xs_enb    =1;
        o_xs_double =1;
        end
    32'b111001xxxxxxxxxxxxxxxxxxxxxxxxxx,//SWC1
    32'b010011xxxxxxxxxxxxxxx00000001000://SWXC1
        begin
        o_xs_enb    =1;
        o_xs_word   =1;
        end

endcase
end
endtask

